diff --git a/ve/ve0200g.uml b/ve/ve0200g.uml index ee0942e1f..26b734d14 100755 --- a/ve/ve0200g.uml +++ b/ve/ve0200g.uml @@ -121,7 +121,7 @@ BEGIN FIELD CHK_USER[1] END -STRING F_PROMPT_USER1 20 +STRING F_PROMPT_USER1 18 BEGIN PROMPT 2 3 "Prompt " FIELD PROMPT_USER[1] @@ -170,7 +170,7 @@ BEGIN FIELD CHK_USER[2] END -STRING F_PROMPT_USER2 20 +STRING F_PROMPT_USER2 18 BEGIN PROMPT 2 6 "Prompt " FIELD PROMPT_USER[2] @@ -219,7 +219,7 @@ BEGIN FIELD CHK_USER[3] END -STRING F_PROMPT_USER3 20 +STRING F_PROMPT_USER3 18 BEGIN PROMPT 2 9 "Prompt " FIELD PROMPT_USER[3] @@ -268,7 +268,7 @@ BEGIN FIELD CHK_USER[4] END -STRING F_PROMPT_USER4 20 +STRING F_PROMPT_USER4 18 BEGIN PROMPT 2 12 "Prompt " FIELD PROMPT_USER[4] @@ -317,7 +317,7 @@ BEGIN FIELD CHK_USER[5] END -STRING F_PROMPT_USER5 20 +STRING F_PROMPT_USER5 18 BEGIN PROMPT 2 15 "Prompt " FIELD PROMPT_USER[5] @@ -370,7 +370,7 @@ BEGIN FIELD CHK_USER[6] END -STRING F_PROMPT_USER6 20 +STRING F_PROMPT_USER6 18 BEGIN PROMPT 2 3 "Prompt " FIELD PROMPT_USER[6] @@ -419,7 +419,7 @@ BEGIN FIELD CHK_USER[7] END -STRING F_PROMPT_USER7 20 +STRING F_PROMPT_USER7 18 BEGIN PROMPT 2 6 "Prompt " FIELD PROMPT_USER[7] @@ -468,7 +468,7 @@ BEGIN FIELD CHK_USER[8] END -STRING F_PROMPT_USER8 20 +STRING F_PROMPT_USER8 18 BEGIN PROMPT 2 9 "Prompt " FIELD PROMPT_USER[8] @@ -517,7 +517,7 @@ BEGIN FIELD CHK_USER[9] END -STRING F_PROMPT_USER9 20 +STRING F_PROMPT_USER9 18 BEGIN PROMPT 2 12 "Prompt " FIELD PROMPT_USER[9] @@ -566,7 +566,7 @@ BEGIN FIELD CHK_USER[10] END -STRING F_PROMPT_USER10 20 +STRING F_PROMPT_USER10 18 BEGIN PROMPT 2 15 "Prompt " FIELD PROMPT_USER[10] @@ -619,7 +619,7 @@ BEGIN FIELD CHK_USER[11] END -STRING F_PROMPT_USER11 20 +STRING F_PROMPT_USER11 18 BEGIN PROMPT 2 3 "Prompt " FIELD PROMPT_USER[11] @@ -668,7 +668,7 @@ BEGIN FIELD CHK_USER[12] END -STRING F_PROMPT_USER12 20 +STRING F_PROMPT_USER12 18 BEGIN PROMPT 2 6 "Prompt " FIELD PROMPT_USER[12] @@ -717,7 +717,7 @@ BEGIN FIELD CHK_USER[13] END -STRING F_PROMPT_USER13 20 +STRING F_PROMPT_USER13 18 BEGIN PROMPT 2 9 "Prompt " FIELD PROMPT_USER[13] @@ -766,7 +766,7 @@ BEGIN FIELD CHK_USER[14] END -STRING F_PROMPT_USER14 20 +STRING F_PROMPT_USER14 18 BEGIN PROMPT 2 12 "Prompt " FIELD PROMPT_USER[14] @@ -815,7 +815,7 @@ BEGIN FIELD CHK_USER[15] END -STRING F_PROMPT_USER15 20 +STRING F_PROMPT_USER15 18 BEGIN PROMPT 2 15 "Prompt " FIELD PROMPT_USER[15] @@ -868,7 +868,7 @@ BEGIN FIELD CHK_USER[16] END -STRING F_PROMPT_USER16 20 +STRING F_PROMPT_USER16 18 BEGIN PROMPT 2 3 "Prompt " FIELD PROMPT_USER[16] @@ -917,7 +917,7 @@ BEGIN FIELD CHK_USER[17] END -STRING F_PROMPT_USER17 20 +STRING F_PROMPT_USER17 18 BEGIN PROMPT 2 6 "Prompt " FIELD PROMPT_USER[17] @@ -966,7 +966,7 @@ BEGIN FIELD CHK_USER[18] END -STRING F_PROMPT_USER18 20 +STRING F_PROMPT_USER18 18 BEGIN PROMPT 2 9 "Prompt " FIELD PROMPT_USER[18] @@ -1015,7 +1015,7 @@ BEGIN FIELD CHK_USER[19] END -STRING F_PROMPT_USER19 20 +STRING F_PROMPT_USER19 18 BEGIN PROMPT 2 12 "Prompt " FIELD PROMPT_USER[19] @@ -1064,7 +1064,7 @@ BEGIN FIELD CHK_USER[20] END -STRING F_PROMPT_USER20 20 +STRING F_PROMPT_USER20 18 BEGIN PROMPT 2 15 "Prompt " FIELD PROMPT_USER[20] diff --git a/ve/ve2400.cpp b/ve/ve2400.cpp index 217983cc9..9bc757913 100755 --- a/ve/ve2400.cpp +++ b/ve/ve2400.cpp @@ -398,59 +398,65 @@ void TMask_anamag::create_user_fields() _ean8_cin = c.get_bool("EAN8CIN"); _ean13_pref = c.get("EAN13"); - bool disable_user_page = true; - TString80 prompt; int page = PAGE_USER; int row = 4; - TBit_array pages; + int col = 0; + int user_fields = 0; + //si suppone 20 campi user; sarebbe meglio definire una costante for (int i = 1; i <= 20; i++) { if (c.get_bool("CHK_USER", "ve", i)) { TEditable_field * f = NULL; prompt = c.get("PROMPT_USER", "ve", i); - prompt.rpad(20); + //se il prompt fosse pił lungo di 18 caratteri... + prompt.rpad(18); + prompt.cut(18); + const char type = c.get_char("TYPE_USER", "ve", i); - if (type == 'S') - f = &add_string(F_USER1 + i - 1, page, prompt, 2, row, c.get_int("LEN_USER", "ve", i)); - else - if (type == 'N') - { - f = &add_number(F_USER1 + i - 1, page, prompt, 2, row, c.get_int("LEN_USER", "ve", i)); - ((TReal_field *) f)->set_decimals(c.get_int("DEC_USER", "ve", i)); - } - else - if (type == 'D') - f = &add_date(F_USER1 + i - 1, page, prompt, 2, row); - else - if (type == 'I') - f = &add_currency(F_USER1 + i - 1, page, prompt, 2, row, c.get_int("LEN_USER", "ve", i)); - else - if (type == 'X') - f = &add_boolean(F_USER1 + i - 1, page, prompt, 2, row); - if (f != NULL) - { - TString8 u; u.format("USER%d", i); - f->set_field(u); - } - pages.set(page); - if (row > 19) - { - page++; - row = 4; - } - } - } + + //visto che lo switch funziona con i char... + switch (type) + { + case 'S': + f = &add_string(F_USER1 + i - 1, page, prompt, col, row, c.get_int("LEN_USER", "ve", i)); + break; + case 'N': + f = &add_number(F_USER1 + i - 1, page, prompt, col, row, c.get_int("LEN_USER", "ve", i)); + ((TReal_field *) f)->set_decimals(c.get_int("DEC_USER", "ve", i)); + break; + case 'D': + f = &add_date(F_USER1 + i - 1, page, prompt, col, row); + break; + case 'I': + f = &add_currency(F_USER1 + i - 1, page, prompt, col, row, c.get_int("LEN_USER", "ve", i)); + break; + case 'X': + f = &add_boolean(F_USER1 + i - 1, page, prompt, col, row); + break; + default: + break; + } + //se esiste il campo utente... + if (f != NULL) + { + TString8 u; u.format("USER%d", i); + f->set_field(u); + user_fields++; + row ++; + if (row > 19) + { + col = 40; + row = 4; + } + } + } //if(c.get_bool... + } //for(int i... - if (!pages[PAGE_USER]) + if (user_fields == 0) _disabled_user_page = PAGE_USER; - else - if (!pages[PAGE_USER + 1]) - _disabled_user_page = PAGE_USER + 1; - else - _disabled_user_page = PAGE_USER + 2; } // costruttore della maschera anagrafica di magazzino diff --git a/ve/ve2400.uml b/ve/ve2400.uml index b0163c31e..8ba9b334f 100755 --- a/ve/ve2400.uml +++ b/ve/ve2400.uml @@ -1378,7 +1378,7 @@ END ENDPAGE -PAGE "Utente 1" 0 0 70 20 +PAGE "Personalizzazioni" 0 0 80 20 GROUPBOX DLG_NULL 78 4 BEGIN @@ -1401,29 +1401,6 @@ END ENDPAGE -PAGE "Utente 2" 0 0 70 20 - -GROUPBOX DLG_NULL 78 3 -BEGIN - PROMPT 0 0 "@bArticolo" -END - -STRING DLG_NULL 20 -BEGIN - FLAGS "D" - PROMPT 2 1 "" - GROUP G_CODART -END - -STRING DLG_NULL 50 -BEGIN - FLAGS "D" - PROMPT 25 1 "" - GROUP G_DESART -END - -ENDPAGE - ENDMASK #include "ve2400c.uml"