diff --git a/ve/ve0300.cpp b/ve/ve0300.cpp index 6aed43599..b6fcdf62f 100755 --- a/ve/ve0300.cpp +++ b/ve/ve0300.cpp @@ -260,6 +260,7 @@ public: // Attiva la generazione della maschera void genera( const TString& profilo); + void genera_testata_1(); // Genera l'intestazione di una pagina ( non la prima ) void intestazione_pagina( const char* def_title = TR("Parametri")); @@ -414,6 +415,7 @@ public: void present( bool p ) { _present = p; } bool present( ) const { return _present; } TArray& campi( ) { return _fields; } + const bool is_testata() const; virtual TObject* dup() const; TGruppo ( int i ); @@ -509,6 +511,17 @@ void TGruppo::add( TField * field ) field->grp(this); } +const bool TGruppo::is_testata() const +{ + FOR_EACH_ARRAY_ITEM(_fields, i, o) + { + TField* campo = (TField*) o; + if(campo->id() == F_STATO) + return true; + } + return false; +} + TGruppo::TGruppo( int i ) { _id = i; @@ -619,6 +632,7 @@ static void genera_gruppo( const TObject& gruppo ) grp.present(FALSE); if (_mask_generator == NULL) _mask_generator = &(grp.generatore()); + grp.campi().for_each(verifica_campo); do_events(); if (grp.present()) @@ -654,7 +668,7 @@ void TGruppo::genera( ) // Passa alla pagina successiva maschera( ).end( ); generatore( ).intestazione_pagina( ); - //maschera( ).line( MASK_FIRST_LINE ); + maschera( ).line( MASK_FIRST_LINE ); oldlinea = MASK_FIRST_LINE; } _fields.for_each( genera_campo ); @@ -1215,6 +1229,170 @@ void TMask_generator::genera_sheet(int line, bool show_list, bool genera_disp) _m->_sheet_generated = true; } +void TMask_generator::genera_testata_1() +{ + TString temp_s; + const char tipo_cf = _pro->get_char("TIPOCF", "MAIN"); + + _m->control( T_CORNICE, DLG_NULL, 7806); + _m->begin( ); + _m->prompt( 1, 0, "" ); + _m->end( ); + + _m->control( T_STRINGA, F_CODNUM, 4 ); + _m->begin( ); + _m->prompt( 2, 1, "Cod. num. " ); + _m->field(DOC_CODNUM); + _m->use("%NUM", 1); + temp_s.format("CODTAB %d", F_CODNUM); + _m->input(temp_s); + _m->display("\"Codice\" CODTAB~\"Descrizione@50\" S0"); + temp_s.format("%d S0", F_DESNUM); + _m->output(temp_s); + _m->check(S_NORMALE); + _m->flag( "GDU" ); + _m->message( "CO,2@" ); + _m->end( ); + + _m->control( T_STRINGA, F_DESNUM, 50 ); + _m->begin( ); + _m->prompt( 24, 1 ); + _m->flag( "GD" ); + _m->message( "CO,3@" ); + _m->end( ); + + _m->control( T_STRINGA, F_TIPODOC, 4 ); + _m->begin( ); + _m->field( DOC_TIPODOC ); + _m->prompt( 2, 2, "Tipo doc. " ); + _m->use("%TIP" , 1); + temp_s.format("CODTAB %d", F_TIPODOC); + _m->input(temp_s); + _m->display("\"Codice\" CODTAB~\"Descrizione@50\" S0"); + temp_s.format("%d S0", F_DESTIPODOC); + _m->output(temp_s); + _m->check(S_NORMALE); + _m->flag( "GDU" ); + _m->message( "CO,4@" ); + _m->end( ); + + _m->control( T_LISTA, F_TIPOCF, 9 ); + _m->begin( ); + _m->prompt( 100, 100, "" ); + _m->field( DOC_TIPOCF ); + _m->item(tipo_cf == 'C' ? "C|Cliente" : "F|Fornitore"); + _m->flag( "D" ); + _m->end( ); + + _m->control( T_STRINGA, F_PROVV, 1 ); + _m->begin( ); + _m->prompt( 100, 100, "

" ); + _m->field( DOC_PROVV ); + _m->flag( "D" ); + _m->end( ); + + _m->control( T_STRINGA, F_DESTIPODOC, 50 ); + _m->begin( ); + _m->prompt( 24, 2 ); + _m->flag( "GD" ); + _m->message( "CO,5@" ); + _m->end( ); + + _m->control( T_STRINGA, F_ANNO, 4 ); + _m->begin( ); + _m->prompt( 2, 3, "Esercizio " ); + _m->field( DOC_ANNO ); + _m->flag( "GD" ); + _m->message( "CO,9@" ); + _m->end( ); + + _m->control( T_NUMERO, F_NDOC, 6 ); + _m->begin( ); + _m->prompt( 24, 3, "Numero doc. " ); + _m->field( DOC_NDOC ); + _m->message( "CO,6@" ); + _m->flag( "GDR" ); + _m->end( ); + + _m->control( T_DATA, F_DATADOC ); + _m->begin( ); + _m->prompt( 46, 3, "Data " ); + _m->field( DOC_DATADOC ); + TString m("CO,7@"); + _m->message(m); + _m->end( ); + + _m->control( T_STRINGA, F_STATO, 1 ); + _m->begin( ); + _m->prompt( 67, 3, "Stato " ); + _m->field( DOC_STATO ); + _m->use("%STD", 1); + _m->input("CODTAB 105"); + _m->display("\"Codice\" CODTAB"); + _m->display("\"Descrizione@50\" S0"); + _m->output("105 CODTAB"); + _m->message( "CO,8@" ); + _m->check(S_NORMALE); + _m->flag( "DG" ); + _m->end( ); + + _m->control( T_STRINGA, F_CODCF, 6 ); + _m->begin( ); + if ( tipo_cf == 'C' ) + { + _m->prompt( 2, 4, "Cliente " ); + _m->warning( "Cliente assente" ); + _m->help( "Codice del cliente del documento" ); + } + else + { + _m->prompt( 2, 4, "Fornitore " ); + _m->warning( "Fornitore assente" ); + _m->help( "Codice del fornitore del documento" ); + } + _m->flag( "R" ); + _m->field( DOC_CODCF ); + _m->group( 1 ); + _m->use( LF_CLIFO, 1 ); + temp_s.format( "TIPOCF \"%c\"~CODCF %d", tipo_cf, F_CODCF); + _m->input( temp_s ); + _m->display( "\"Codice\" CODCF~\"Ragione Sociale@50\" RAGSOC~\"Partita IVA@12\" PAIV~\"Sospeso\" SOSPESO" ); + temp_s.format( "%d CODCF~%d RAGSOC", F_CODCF, F_RAGSOC ); + _m->output( temp_s ); + _m->check( S_OBBLIGATORIO ); + temp_s.format( "ADD RU cg0 -1 %c", tipo_cf); + _m->outline( temp_s ); + _m->message( "CO,10@" ); + _m->end( ); + + _m->control( T_STRINGA, F_RAGSOC, 50 ); + _m->begin( ); + if ( tipo_cf == 'C' ) + { + _m->warning( "Cliente assente" ); + _m->help( "Ragione sociale del cliente del documento" ); + } + else + { + _m->warning( "Fornitore assente" ); + _m->help( "Ragione sociale del fornitore del documento" ); + } + _m->prompt( 24, 4, "" ); + _m->group( 1 ); + _m->use( LF_CLIFO, 2 ); + temp_s.format( "TIPOCF \"%c\"~RAGSOC %d", tipo_cf, F_RAGSOC ); + _m->input( temp_s ); + _m->display( "\"Ragione Sociale@50\" RAGSOC~\"Partita IVA@12\" PAIV~\"Codice\" CODCF" ); + temp_s.format( "%d CODCF~%d RAGSOC", F_CODCF, F_RAGSOC ); + _m->output( temp_s ); + _m->check( S_OBBLIGATORIO ); + temp_s.format( "ADD RU cg0 -1 %c", tipo_cf); + _m->outline( temp_s ); + _m->message( "CO,11@" ); + _m->end( ); + _m->line( MASK_FIRST_LINE ); +} + void TMask_generator::genera( const TString& profilo ) { if( profilo == "-all" || profilo[0] == '*') @@ -1334,193 +1512,12 @@ void TMask_generator::genera( const TString& profilo ) const TString80 title(_pro->get("Title", "MAIN", _m->page(), TR("Testata"))); _m->pagina( _m->page( ), title); - - _m->control( T_CORNICE, DLG_NULL, 7807); - _m->begin( ); - _m->prompt( 1, 0, "" ); - _m->end( ); - - _m->control( T_STRINGA, F_CODNUM, 4 ); - _m->begin( ); - _m->prompt( 2, 1, "Cod. num. " ); - _m->field(DOC_CODNUM); - _m->use("%NUM", 1); - temp_s.format("CODTAB %d", F_CODNUM); - _m->input(temp_s); - _m->display("\"Codice\" CODTAB~\"Descrizione@50\" S0"); - temp_s.format("%d S0", F_DESNUM); - _m->output(temp_s); - _m->check(S_NORMALE); - _m->flag( "GDU" ); - _m->message( "CO,2@" ); - _m->end( ); - - _m->control( T_STRINGA, F_DESNUM, 50 ); - _m->begin( ); - _m->prompt( 24, 1 ); - _m->flag( "GD" ); - _m->message( "CO,3@" ); - _m->end( ); - - _m->control( T_STRINGA, F_TIPODOC, 4 ); - _m->begin( ); - _m->field( DOC_TIPODOC ); - _m->prompt( 2, 2, "Tipo doc. " ); - _m->use("%TIP" , 1); - temp_s.format("CODTAB %d", F_TIPODOC); - _m->input(temp_s); - _m->display("\"Codice\" CODTAB~\"Descrizione@50\" S0"); - temp_s.format("%d S0", F_DESTIPODOC); - _m->output(temp_s); - _m->check(S_NORMALE); - _m->flag( "GDU" ); - _m->message( "CO,4@" ); - _m->end( ); - - _m->control( T_LISTA, F_TIPOCF, 9 ); - _m->begin( ); - _m->prompt( 100, 100, "" ); - _m->field( DOC_TIPOCF ); - _m->item(tipo_cf == 'C' ? "C|Cliente" : "F|Fornitore"); - _m->flag( "D" ); - _m->end( ); - - _m->control( T_STRINGA, F_PROVV, 1 ); - _m->begin( ); - _m->prompt( 100, 100, "

" ); - _m->field( DOC_PROVV ); - _m->flag( "D" ); - _m->end( ); - - _m->control( T_STRINGA, F_DESTIPODOC, 50 ); - _m->begin( ); - _m->prompt( 24, 2 ); - _m->flag( "GD" ); - _m->message( "CO,5@" ); - _m->end( ); - - _m->control( T_STRINGA, F_ANNO, 4 ); - _m->begin( ); - _m->prompt( 2, 3, "Esercizio " ); - _m->field( DOC_ANNO ); - _m->flag( "GD" ); - _m->message( "CO,9@" ); - _m->end( ); - - _m->control( T_NUMERO, F_NDOC, 6 ); - _m->begin( ); - _m->prompt( 24, 3, "Numero doc. " ); - _m->field( DOC_NDOC ); - _m->message( "CO,6@" ); - _m->flag( "GDR" ); - _m->end( ); - - _m->control( T_DATA, F_DATADOC ); - _m->begin( ); - _m->prompt( 46, 3, "Data " ); - _m->field( DOC_DATADOC ); - TString m("CO,7@"); - _m->message(m); - _m->end( ); - - _m->control( T_STRINGA, F_STATO, 1 ); - _m->begin( ); - _m->prompt( 67, 3, "Stato " ); - _m->field( DOC_STATO ); - _m->use("%STD", 1); - _m->input("CODTAB 105"); - _m->display("\"Codice\" CODTAB"); - _m->display("\"Descrizione@50\" S0"); - _m->output("105 CODTAB"); - _m->message( "CO,8@" ); - _m->check(S_NORMALE); - _m->flag( "DG" ); - _m->end( ); - _m->control( T_STRINGA, F_CODCF, 6 ); - _m->begin( ); - if ( tipo_cf == 'C' ) - { - _m->prompt( 2, 4, "Cliente " ); - _m->warning( "Cliente assente" ); - _m->help( "Codice del cliente del documento" ); - } - else - { - _m->prompt( 2, 4, "Fornitore " ); - _m->warning( "Fornitore assente" ); - _m->help( "Codice del fornitore del documento" ); - } - _m->flag( "R" ); - _m->field( DOC_CODCF ); - _m->group( 1 ); - _m->use( LF_CLIFO, 1 ); - temp_s.format( "TIPOCF \"%c\"~CODCF %d", tipo_cf, F_CODCF); - _m->input( temp_s ); - _m->display( "\"Codice\" CODCF~\"Ragione Sociale@50\" RAGSOC~\"Partita IVA@12\" PAIV~\"Sospeso\" SOSPESO" ); - temp_s.format( "%d CODCF~%d RAGSOC", F_CODCF, F_RAGSOC ); - _m->output( temp_s ); - _m->check( S_OBBLIGATORIO ); - temp_s.format( "ADD RU cg0 -1 %c", tipo_cf); - _m->outline( temp_s ); - _m->message( "CO,10@" ); - _m->end( ); - - _m->control( T_STRINGA, F_RICALT, 30 ); - _m->begin( ); - _m->prompt( 22, 4, "" ); - _m->warning( "Cliente assente" ); - _m->help( "Codice mnemonico del cliente del documento" ); - _m->group( 1 ); - _m->use( LF_CLIFO, 6 ); - temp_s.format( "TIPOCF \"%c\"~RICALT %d", tipo_cf, F_RICALT); - _m->input( temp_s ); - _m->display( "\"Mnemonico@30\" RICALT~\"Codice\" CODCF~\"Ragione Sociale@50\" RAGSOC~\"Partita IVA@12\" PAIV~\"Sospeso\" SOSPESO" ); - temp_s.format( "%d RICALT~%d CODCF~%d RAGSOC", F_RICALT, F_CODCF, F_RAGSOC ); - _m->output( temp_s ); - _m->check( S_NORMALE ); - temp_s.format( "ADD RU cg0 -1 %c", tipo_cf); - _m->outline( temp_s ); - _m->end( ); - - _m->control( T_STRINGA, F_RAGSOC, 50 ); - _m->begin( ); - if ( tipo_cf == 'C' ) - { - _m->warning( "Cliente assente" ); - _m->help( "Ragione sociale del cliente del documento" ); - } - else - { - _m->warning( "Fornitore assente" ); - _m->help( "Ragione sociale del fornitore del documento" ); - } - _m->prompt( 2, 5, "Ragione Sociale " ); - _m->group( 1 ); - _m->use( LF_CLIFO, 2 ); - temp_s.format( "TIPOCF \"%c\"~RAGSOC %d", tipo_cf, F_RAGSOC ); - _m->input( temp_s ); - _m->display( "\"Ragione Sociale@50\" RAGSOC~\"Partita IVA@12\" PAIV~\"Codice\" CODCF" ); - temp_s.format( "%d CODCF~%d RAGSOC", F_CODCF, F_RAGSOC ); - _m->output( temp_s ); - _m->check( S_OBBLIGATORIO ); - temp_s.format( "ADD RU cg0 -1 %c", tipo_cf); - _m->outline( temp_s ); - _m->message( "CO,11@" ); - _m->end( ); - _m->line( MASK_FIRST_LINE+1 ); // La prima pagina ha un'intestazione pił lunga - - // Generazione - - // Scorro l'array dei gruppi, e ne creo una copia ordinata - // con solo i gruppi visibili - TArray sortedgroups; TString16 chiave, chiavegruppo; last = _pro->get_int( "NGROUPS", "ORDINEGRUPPI" ); for( i = 1; i <= last; i ++ ) - { - do_events(); + { chiave.format( "%d", i ); const TString key(_pro->get( chiave, "ORDINEGRUPPI" )); @@ -1536,12 +1533,24 @@ void TMask_generator::genera( const TString& profilo ) sortedgroups.add(key); } } - + + // Generazione + // Scorro l'array dei gruppi, e ne creo una copia ordinata + // con solo i gruppi visibili + TString80 message; _m->_sheet_generated = false; message.format("Generazione profilo : %s", (const char *)profilo); _bar = new TProgind(sortedgroups.items(), message, FALSE, TRUE); + + TGruppo* gruppo1 = (TGruppo*)sortedgroups.objptr(0); + + if (gruppo1->is_testata()) + _m->line(0); + else + genera_testata_1(); + sortedgroups.for_each( genera_gruppo ); delete _bar; _bar = NULL; _m->end( ); @@ -1550,7 +1559,7 @@ void TMask_generator::genera( const TString& profilo ) intestazione_pagina(TR("Righe")); genera_sheet(); } - + // Generazione pagina dei piedi { TToken_string s(_pro->get("CAMPICALC", "MAIN")); diff --git a/ve/ve0300a.src b/ve/ve0300a.src index 2d55bc27f..9308ceac0 100755 --- a/ve/ve0300a.src +++ b/ve/ve0300a.src @@ -49,6 +49,7 @@ #include "veuml.h" #include "veuml1.h" +#include "veuml3.h" #include "veini.h" [OCCASEDIT] @@ -84,20 +85,6 @@ DISPLAY="Codice Fiscale@16" COFI~"Ragione sociale@50" RAGSOC~"Codice" CODCF~"Ind OUTPUT=@F_CODCF SIZE=16 -[RICALT] -// il campo e' letto nel file 20 clifo -GROUP=100 -X=2 -Y=0 -MSKID=F_RICALT -TYPE=T_STRINGA -PROMPT="Ric. alt." -USE=LF_CLIFO KE 6 -INPUT=TIPOCF F_TIPOCF SELECT~RICALT F_RICALT -DISPLAY="Ricerca Altrenativa@30" RICALT~"Ragione sociale@50" RAGSOC~"Codice" CODCF~"Indrizzo@35" INDCF -OUTPUT=@F_CODCF -SIZE=30 - [STATOPAIV] // il campo e' letto nel file 20 clifo GROUP=100 @@ -940,7 +927,7 @@ TYPE=T_NUMERO PROMPT="Stato " SIZE=3 FLAG=Z -USE=@F_STATOCF +USE=%STA INPUT=CODTAB F_STATOSP OUTPUT=F_DESSTATOSP S0 SPECIAL=CH SEARCH @@ -963,7 +950,7 @@ TYPE=T_STRINGA PROMPT="Comune " SIZE=4 FLAG=U -USE=@F_COMCF +USE=LF_COMUNI INPUT=STATO F_STATOSP~COM F_COMSP OUTPUT=F_DENCOMSP DENCOM~F_PROVCOMSP PROVCOM SPECIAL=CH SEARCH @@ -1689,13 +1676,242 @@ SPECIAL=CH NORMAL [DESCRMAGC] GROUP=2900 -X=25 +X=2 Y=1 MSKID=F_DESCRMAGC TYPE=T_STRINGA PROMPT="" SIZE=50 +[LVGROUP] +GROUP=4041 +X=1 +Y=0 +MSKID=F_LVGROUP +TYPE=T_CORNICE +SIZE=7907 +PROMPT="" + +[LVCODNUM] +GROUP=4041 +X=2 +Y=1 +FIELDNAME=CODNUM +MSKID=F_CODNUM +TYPE=T_STRINGA +SIZE=4 +PROMPT="Cod. Num. " +FLAG=GDU +USE=%NUM +INPUT=CODTAB F_CODNUM +DISPLAY="Codice" CODTAB~"Descrizione@50" S0 +OUTPUT=F_DESNUM S0 +SPECIAL=CH NORMAL~ME CO,2@ + +[LVDESNUM] +GROUP=4041 +X=18 +Y=1 +MSKID=F_DESNUM +TYPE=T_STRINGA +SIZE=45 +PROMPT="" +FLAG=GD +SPECIAL=ME CO,3@ + +[LVSTATO] +GROUP=4041 +X=71 +Y=1 +FIELDNAME=STATO +MSKID=F_STATO +TYPE=T_STRINGA +SIZE=1 +PROMPT="Stato " +FLAG=GD +USE=%STD +INPUT=CODTAB F_STATO +DISPLAY="Codice" CODTAB~"Descrizione@50" S0 +OUTPUT=F_STATO CODTAB +SPECIAL=CH NORMAL~ME CO,8@ + +[LVPROVV] +GROUP=4041 +X=200 +Y=1 +FIELDNAME=PROVV +MSKID=F_PROVV +TYPE=T_STRINGA +SIZE=1 +PROMPT="Provvisorio/Definitivo" +FLAG=D + +[LVTIPODOC] +GROUP=4041 +X=2 +Y=2 +FIELDNAME=TIPODOC +MSKID=F_TIPODOC +TYPE=T_STRINGA +SIZE=4 +PROMPT="Tipo Doc. " +FLAG=GDU +USE=%TIP +INPUT=CODTAB F_TIPODOC +DISPLAY="Codice" CODTAB~"Descrizione@50" S0 +OUTPUT=F_DESTIPODOC S0 +SPECIAL=CH NORMAL~ME CO,4@ + +[LVDESTIPODOC] +GROUP=4041 +X=18 +Y=2 +MSKID=F_DESTIPODOC +TYPE=T_STRINGA +SIZE=45 +PROMPT="" +FLAG=GD +SPECIAL=ME CO,5@ + +[LVNDOC] +GROUP=4041 +X=64 +Y=2 +FIELDNAME=NDOC +MSKID=F_NDOC +TYPE=T_NUMERO +SIZE=4 +PROMPT="Num. Doc. " +FLAG=GDR +SPECIAL=ME CO,6@ + +[LVANNO] +GROUP=4041 +X=2 +Y=3 +FIELDNAME=ANNO +MSKID=F_ANNO +TYPE=T_STRINGA +SIZE=4 +PROMPT="Esercizio " +FLAG=GD +SPECIAL=ME CO,9@ + +[LVDATADOC] +GROUP=4041 +X=18 +Y=3 +FIELDNAME=DATADOC +MSKID=F_DATADOC +TYPE=T_DATA +SPECIAL=ME CO,7@ + +[LVGIORNO] +GROUP=4041 +X=34 +Y=3 +MSKID=F_LVGIORNO +TYPE=T_STRINGA +PROMPT ="" +SIZE=9 +FLAG=D + +[LVSETTIMANA] +GROUP=4041 +X=44 +Y=3 +MSKID=F_LVSETTIMANA +TYPE=T_STRINGA +PROMPT="Settimana " +SIZE=1 +FLAG=D + +[LVTIPOCF] +GROUP=4041 +X=200 +Y=4 +FIELDNAME=TIPOCF +MSKID=F_TIPOCF +TYPE=T_LISTA +ITEMS=C|Cliente +SIZE=9 +PROMPT="" +FLAG=D + +[LVCODCF] +GROUP=4041 +X=2 +Y=4 +FIELDNAME=CODCF +MSKID=F_CODCF +TYPE=T_STRINGA +SIZE=6 +PROMPT="Cliente " +FLAG=R +USE=LF_CLIFO +INPUT=TIPOCF "C"~CODCF F_CODCF +DISPLAY="Codice" CODCF~"Mnemonico" RICALT~"Ragione Sociale@50" RAGSOC +OUTPUT=F_CODCF CODCF~F_RAGSOC RAGSOC~F_LVRICALT RICALT +SPECIAL=CH REQUIRED~ADD RU cg0 -1 "C"~ME CO,10@ + +[LVRICALT] +GROUP=4041 +X=23 +Y=4 +MSKID=F_LVRICALT +TYPE=T_STRINGA +SIZE=30 +PROMPT="" +USE=LF_CLIFO KE 6 +INPUT=TIPOCF "C"~RICALT F_LVRICALT +DISPLAY="Mnemonico" RICALT~"Codice" CODCF~"Ragione Sociale@50" RAGSOC +OUTPUT=@F_CODCF + +[LVCODCONT] +GROUP=4041 +X=66 +Y=4 +FIELDNAME=CODCONT +MSKID=F_LVCODCONT +TYPE=T_NUMERO +PROMPT="Contratto " +SIZE=2 +FLAG=D + +[LVRAGSOC] +GROUP=4041 +X=2 +Y=5 +MSKID=F_RAGSOC +TYPE=T_STRINGA +SIZE=50 +PROMPT="Ragione Sociale " +USE=LF_CLIFO KE 2 +INPUT=TIPOCF "C"~RAGSOC F_RAGSOC +DISPLAY="Ragione Sociale@50" RAGSOC~"Codice" CODCF~"Mnemonico" RICALT +OUTPUT=@F_CODCF +SPECIAL=CH REQUIRED~ADD RU cg0 -1 "C"~ME CO,11@ + +[LVCODCAU] +GROUP=4041 +X=2 +Y=7 +MSKID=F_LVCODCAU +TYPE=T_STRINGA +PROMPT="Causale " +SIZE=5 +FLAG=DU + +[LVDESCAU] +GROUP=4041 +X=19 +Y=7 +MSKID=F_LVDESCAU +TYPE=T_STRINGA +PROMPT="" +SIZE=50 +FLAG=DU + [BLANK] GROUP=4000 X=100 @@ -1703,5 +1919,4 @@ Y=0 MSKID=F_BLANK TYPE=T_STRINGA PROMPT="" -SIZE=1 - +SIZE=1 \ No newline at end of file diff --git a/ve/veuml3.h b/ve/veuml3.h new file mode 100755 index 000000000..e6a4f77a4 --- /dev/null +++ b/ve/veuml3.h @@ -0,0 +1,13 @@ +#ifndef __VEUML3_H +#define __VEUML3_H + +// campi del gruppo lavanderie (4041) +#define F_LVGROUP 800 +#define F_LVRICALT 801 +#define F_LVGIORNO 802 +#define F_LVSETTIMANA 803 +#define F_LVCODCONT 804 +#define F_LVCODCAU 805 +#define F_LVDESCAU 806 + +#endif // __VEUML3_H