diff --git a/mg/mg1100.cpp b/mg/mg1100.cpp index 25b0904ab..bd2a6d3dc 100755 --- a/mg/mg1100.cpp +++ b/mg/mg1100.cpp @@ -6,17 +6,13 @@ #include #include #include -#include "..\mg\mglib01.h" -#include "..\cg\cglib.h" -#include "..\ve\velib03.h" +#include "..\mg\mglib.h" +//#include "..\cg\cglib.h" +#include "..\ve\veconf.h" #include "mg1100.h" - - - - //******************** //******************** // maschera dell'applicazione "Gestione interattiva movimenti di magazzino" @@ -28,8 +24,8 @@ class TMask_movmag: public TMask { real price_quant; bool price_proposed; real proposed_price(TString codart, real quant); - static bool handle_righeprezzo(TMask_field &f, KEY k); // notify delle righe - static bool handle_codcaus(TMask_field &fld, KEY k); // handler delle righe + static bool handle_righeprezzo(TMask_field &f, KEY k); // handler delle righe + static bool handle_codcaus(TMask_field &fld, KEY k); // handler della causale static bool handle_datacomp(TMask_field &, KEY); // handler del numero di registrazione public: TMask_movmag(TMag_livelli *l_m,TMov_mag * m_m); @@ -57,44 +53,50 @@ TMask_movmag::TMask_movmag(TMag_livelli *l_m,TMov_mag * m_m) ((TSheet_field &)field(F_RIGHE)).sheet_mask().field(F_QUANT).set_handler(handle_righeprezzo); ((TSheet_field &)field(F_RIGHE)).set_userget(sheetrighe_get); ((TSheet_field &)field(F_RIGHE)).set_userput(sheetrighe_put); - ((TSheet_field &)field(F_RIGHE)).set_lines_record(*m_m->rows_record()); + ((TSheet_field &)field(F_RIGHE)).set_lines_record(m_m->body()); - // setta i campi della maschera - // per la pagina giacenze - TSheet_field &fld_righe= (TSheet_field &)field(F_RIGHE); - // disabilita le colonne quando non sono utilizzati i livelli di giacenza - if (livelli_giac->enabled(1)) { - fld_righe.sheet_mask().field(F_LIV1).show(); - fld_righe.set_column_header(fld_righe.cid2index(F_LIV1),livelli_giac->name(1)); - fld_righe.sheet_mask().field(F_LIV1).set_prompt(livelli_giac->name(1)); - } else { - fld_righe.sheet_mask().field(F_LIV1).hide(); - fld_righe.delete_column(fld_righe.cid2index(F_LIV1)); - } - if (livelli_giac->enabled(2)) { - fld_righe.sheet_mask().field(F_LIV2).show(); - fld_righe.set_column_header(fld_righe.cid2index(F_LIV2),livelli_giac->name(2)); - fld_righe.sheet_mask().field(F_LIV2).set_prompt(livelli_giac->name(2)); - } else { - fld_righe.sheet_mask().field(F_LIV2).hide(); - fld_righe.delete_column(fld_righe.cid2index(F_LIV2)); - } - if (livelli_giac->enabled(3)) { - fld_righe.sheet_mask().field(F_LIV3).show(); - fld_righe.set_column_header(fld_righe.cid2index(F_LIV3),livelli_giac->name(3)); - fld_righe.sheet_mask().field(F_LIV3).set_prompt(livelli_giac->name(3)); - } else { - fld_righe.sheet_mask().field(F_LIV3).hide(); - fld_righe.delete_column(fld_righe.cid2index(F_LIV3)); - } - if (livelli_giac->enabled(4)) { - fld_righe.sheet_mask().field(F_LIV4).show(); - fld_righe.set_column_header(fld_righe.cid2index(F_LIV4),livelli_giac->name(4)); - fld_righe.sheet_mask().field(F_LIV4).set_prompt(livelli_giac->name(4)); - } else { - fld_righe.sheet_mask().field(F_LIV4).hide(); - fld_righe.delete_column(fld_righe.cid2index(F_LIV4)); - } + // setta i campi della maschera + // per la pagina giacenze + TSheet_field &fld_righe= (TSheet_field &)field(F_RIGHE); + // disabilita le colonne quando non sono utilizzati i livelli di giacenza + if (livelli_giac->enabled(1)) { + fld_righe.sheet_mask().field(F_LIV1).show(); + fld_righe.set_column_header(fld_righe.cid2index(F_LIV1),livelli_giac->name(1)); + fld_righe.sheet_mask().field(F_LIV1).set_prompt(livelli_giac->name(1)); + } else { + fld_righe.sheet_mask().field(F_LIV1).hide(); + fld_righe.delete_column(fld_righe.cid2index(F_LIV1)); + } + if (livelli_giac->enabled(2)) { + fld_righe.sheet_mask().field(F_LIV2).show(); + fld_righe.set_column_header(fld_righe.cid2index(F_LIV2),livelli_giac->name(2)); + fld_righe.sheet_mask().field(F_LIV2).set_prompt(livelli_giac->name(2)); + } else { + fld_righe.sheet_mask().field(F_LIV2).hide(); + fld_righe.delete_column(fld_righe.cid2index(F_LIV2)); + } + if (livelli_giac->enabled(3)) { + fld_righe.sheet_mask().field(F_LIV3).show(); + fld_righe.set_column_header(fld_righe.cid2index(F_LIV3),livelli_giac->name(3)); + fld_righe.sheet_mask().field(F_LIV3).set_prompt(livelli_giac->name(3)); + } else { + fld_righe.sheet_mask().field(F_LIV3).hide(); + fld_righe.delete_column(fld_righe.cid2index(F_LIV3)); + } + if (livelli_giac->enabled(4)) { + fld_righe.sheet_mask().field(F_LIV4).show(); + fld_righe.set_column_header(fld_righe.cid2index(F_LIV4),livelli_giac->name(4)); + fld_righe.sheet_mask().field(F_LIV4).set_prompt(livelli_giac->name(4)); + } else { + fld_righe.sheet_mask().field(F_LIV4).hide(); + fld_righe.delete_column(fld_righe.cid2index(F_LIV4)); + } + + TConfig prassid(CONFIG_DITTA, "ve"); // apre il file di configurazione della ditta corrente + if (prassid.get_bool("GES", NULL, A_LISTINI)) + field(F_CATVEN).enable(prassid.get_bool("GESLISCV")); + else + field(F_CATVEN).disable(); } @@ -174,7 +176,7 @@ real TMask_movmag::proposed_price(TString codart, TConfig cfgditta(CONFIG_DITTA); TCondizione_vendita cv(&cfgditta,&anamag,&umart); - cv.put_listino(get(F_CODCONDV),get(F_CATVEN),get(F_TIPOCF),get(F_CODCF)); + cv.put_listino(get(F_CODCONDV),get(F_CATVEN)); cv.ricerca(codart,quant); rv=cv.get_prezzo(); } @@ -247,8 +249,9 @@ bool TApp_movmag::user_create() { _rmovmag = new TLocalisamfile(LF_RMOVMAG); - TMov_mag * m_m= new TMov_mag; // record del movimento di magazzino - + TMov_mag * m_m= new TMov_mag(); // record del movimento di magazzino + m_m->enable_autoload(LF_RMOVMAG); + // gestione giacenza a livelli _livelli_giac= new TMag_livelli("FCG"); // maschera specifica con gli handler dei movimenti diff --git a/mg/mg1100.h b/mg/mg1100.h index 230670944..d91f8a94c 100755 --- a/mg/mg1100.h +++ b/mg/mg1100.h @@ -22,6 +22,12 @@ #define F_CODCF 122 #define F_CODCONDV 123 +#define H_NUMREG 131 +#define H_DATAREG 132 +#define H_ANNOES 133 +#define H_DATACOMP 134 +#define H_DESCR 135 + #define G_DEFMOV 1 #include "mg1100a.h" diff --git a/mg/mg1100.uml b/mg/mg1100.uml index 8e3d9e104..b4f633b66 100755 --- a/mg/mg1100.uml +++ b/mg/mg1100.uml @@ -16,7 +16,7 @@ NUMBER F_NUMREG 7 BEGIN // FLAGS "D" FIELD NUMREG - PROMPT 2 2 "Numero di registrazione " + PROMPT 2 2 "Operazione numero " KEY 1 3 4 USE LF_MOVMAG INPUT NUMREG F_NUMREG @@ -25,6 +25,7 @@ BEGIN DISPLAY "Data reg." DATAREG DISPLAY "Data comp." DATACOMP OUTPUT F_NUMREG NUMREG + OUTPUT H_NUMREG NUMREG OUTPUT F_DATAREG DATAREG OUTPUT F_DATACOMP DATACOMP CHECKTYPE REQUIRED @@ -35,6 +36,7 @@ BEGIN FLAGS "D" PROMPT 2 3 "Esercizio di competenza " FIELD ANNOES + MESSAGE COPY,H_ANNOES END DATE F_DATAREG @@ -52,6 +54,7 @@ BEGIN DISPLAY "Data comp." DATACOMP OUTPUT F_NUMREG NUMREG OUTPUT F_DATAREG DATAREG + OUTPUT H_DATAREG DATAREG OUTPUT F_DATACOMP DATACOMP CHECKTYPE REQUIRED END @@ -66,7 +69,10 @@ BEGIN INPUT NUMREG F_NUMREG INPUT DATACOMP F_DATACOMP COPY DISPLAY F_DATAREG - COPY OUTPUT F_DATAREG + OUTPUT F_NUMREG NUMREG + OUTPUT F_DATAREG DATAREG + OUTPUT F_DATACOMP DATACOMP + OUTPUT H_DATACOMP DATACOMP CHECKTYPE REQUIRED END @@ -74,6 +80,7 @@ STRING F_DESCR 50 40 BEGIN PROMPT 2 4 "Descrizione " FIELD DESCR + MESSAGE COPY,H_DESCR END LISTBOX F_RIFADOC 30 @@ -163,10 +170,12 @@ LISTBOX F_TIPOCF 10 BEGIN PROMPT 2 9 "Relativo a " FIELD TIPOCF + ITEM " |Nessuno" + MESSAGE HIDE,F_CODCLI|HIDE,F_CODFOR|RESET,F_CODCF|HIDE,F_RAGSOC ITEM "C|Cliente" - MESSAGE SHOW,F_CODCLI|HIDE,F_CODFOR//|CHECK,F_CODCF//|RESET,F_CODFOR + MESSAGE SHOW,F_CODCLI|HIDE,F_CODFOR|SHOW,F_RAGSOC ITEM "F|Fornitore" - MESSAGE HIDE,F_CODCLI|SHOW,F_CODFOR//|CHECK,F_CODCF//|RESET,F_CODCLI + MESSAGE HIDE,F_CODCLI|SHOW,F_CODFOR|SHOW,F_RAGSOC GROUP G_DEFMOV END @@ -183,8 +192,6 @@ BEGIN DISPLAY "Ragione sociale@50" RAGSOC OUTPUT F_CODCF CODCF MESSAGE EMPTY RESET,F_CODCF -// OUTPUT F_CODCLI CODCF -// MESSAGE COPY,F_CODCF|CHECK,F_CODCF CHECKTYPE NORMAL GROUP G_DEFMOV END @@ -201,8 +208,6 @@ BEGIN DISPLAY "Ragione sociale@50" RAGSOC OUTPUT F_CODCF CODCF MESSAGE EMPTY RESET,F_CODCF -// OUTPUT F_CODFOR CODCF -// MESSAGE COPY,F_CODCF|CHECK,F_CODCF CHECKTYPE NORMAL GROUP G_DEFMOV END @@ -220,7 +225,6 @@ BEGIN OUTPUT F_CODCF CODCF CHECKTYPE NORMAL MESSAGE COPY,F_CODCLI|COPY,F_CODFOR -// MESSAGE EMPTY RESET,F_RAGSOC END STRING F_RAGSOC 50 40 @@ -239,30 +243,29 @@ LISTBOX F_TIPOCONDV 1 12 BEGIN PROMPT 2 12 "Condizione di vendita " ITEM " |Nessuna" + MESSAGE RESET,F_CATVEN|HIDE,F_CATVEN MESSAGE DISABLE,F_CODLIST|DISABLE,F_CODCONTR|DISABLE,F_CODOFF - MESSAGE ENABLE,F_TIPOCF|ENABLE,F_CODCLI|ENABLE,F_CODFOR|ENABLE,F_RAGSOC + MESSAGE ENABLE,F_TIPOCF|RESET,F_TIPOCF ITEM "L|Listino" + MESSAGE SHOW,F_CATVEN MESSAGE ENABLE,F_CODLIST|DISABLE,F_CODCONTR|DISABLE,F_CODOFF MESSAGE RESET,F_CODCONTR|RESET,F_CODOFF - MESSAGE DISABLE,F_TIPOCF|DISABLE,F_CODCLI|DISABLE,F_CODFOR|DISABLE,F_RAGSOC + MESSAGE DISABLE,F_TIPOCF|RESET,F_TIPOCF ITEM "C|Contratto" + MESSAGE RESET,F_CATVEN|HIDE,F_CATVEN MESSAGE DISABLE,F_CODLIST|ENABLE,F_CODCONTR|DISABLE,F_CODOFF MESSAGE RESET,F_CODLIST|RESET,F_CODOFF - MESSAGE DISABLE,F_TIPOCF|DISABLE,F_CODCLI|DISABLE,F_CODFOR|DISABLE,F_RAGSOC + MESSAGE ENABLE,F_TIPOCF ITEM "O|Offerta" + MESSAGE RESET,F_CATVEN|HIDE,F_CATVEN MESSAGE DISABLE,F_CODLIST|DISABLE,F_CODCONTR|ENABLE,F_CODOFF MESSAGE RESET,F_CODLIST|RESET,F_CODCONTR - MESSAGE DISABLE,F_TIPOCF|DISABLE,F_CODCLI|DISABLE,F_CODFOR|DISABLE,F_RAGSOC + MESSAGE DISABLE,F_TIPOCF|RESET,F_TIPOCF // GROUP G_DEFMOV END -STRING F_CATVEN 2 -BEGIN - PROMPT 0 0 "" - FLAGS "HG" -END STRING F_CODCONDV 3 BEGIN @@ -270,9 +273,23 @@ BEGIN FLAGS "HG" END +STRING F_CATVEN 2 +BEGIN + FLAGS "D" + PROMPT 2 13 "Cat.ven." + FIELD CATVEN + USE CVE + INPUT CODTAB F_CATVEN + DISPLAY "Cat." CODTAB + DISPLAY "Descrizione@50" S0 + OUTPUT F_CATVEN CODTAB + MESSAGE CHECK,F_CODLIST + CHECKTYPE NORMAL +END + STRING F_CODLIST 3 BEGIN - PROMPT 2 13 "Codice listino " + PROMPT 20 13 "Codice listino " FIELD CODLIST USE LF_CONDV INPUT TIPO "L" @@ -283,10 +300,11 @@ BEGIN DISPLAY "Cod Cli/For" CODCF DISPLAY "Codice" COD DISPLAY "Descr.@30" DESCR - OUTPUT F_TIPOCONDV TIPO - OUTPUT F_CATVEN CATVEN - OUTPUT F_CODCF CODCF +// OUTPUT F_TIPOCONDV TIPO OUTPUT F_CODLIST COD + OUTPUT F_CATVEN CATVEN + OUTPUT F_TIPOCF TIPOCF + OUTPUT F_CODCF CODCF OUTPUT F_CODCONDV COD CHECKTYPE NORMAL // GROUP G_DEFMOV @@ -294,7 +312,7 @@ END STRING F_CODCONTR 3 BEGIN - PROMPT 26 13 "Codice contratto " + PROMPT 20 14 "Codice contratto " FIELD CODCONT USE LF_CONDV INPUT TIPO "C" @@ -307,8 +325,7 @@ BEGIN DISPLAY "Cod Cli/For" CODCF DISPLAY "Codice" COD DISPLAY "Descr.@30" DESCR - OUTPUT F_TIPOCONDV TIPO - OUTPUT F_CATVEN CATVEN +// OUTPUT F_TIPOCONDV TIPO OUTPUT F_TIPOCF TIPOCF OUTPUT F_CODCF CODCF OUTPUT F_CODCONTR COD @@ -320,7 +337,7 @@ END STRING F_CODOFF 3 BEGIN - PROMPT 50 13 "Codice offerta " + PROMPT 20 15 "Codice offerta " FIELD CODCAMP USE LF_CONDV INPUT TIPO "O" @@ -330,7 +347,6 @@ BEGIN DISPLAY "Descr.@30" DESCR OUTPUT F_TIPOCONDV TIPO OUTPUT F_CODCF CODCF - OUTPUT F_CATVEN CATVEN OUTPUT F_CODOFF COD OUTPUT F_CODCONDV COD CHECKTYPE NORMAL @@ -341,18 +357,59 @@ ENDPAGE PAGE "Righe" 11 60 14 + + +GROUPBOX DLG_NULL 75 5 +BEGIN + PROMPT 1 1 "" + FLAGS "R" +END + +NUMBER H_NUMREG 7 +BEGIN + FLAGS "D" + FIELD NUMREG + PROMPT 2 2 "Operazione numero " +END + +NUMBER H_ANNOES 4 +BEGIN + FLAGS "D" + PROMPT 2 3 "Esercizio di competenza " +END + +DATE H_DATAREG +BEGIN + PROMPT 38 2 "Data di registrazione " + FLAGS "D" +END + +DATE H_DATACOMP +BEGIN + PROMPT 38 3 "Data di competenza " + FLAGS "D" +END + +STRING H_DESCR 50 40 +BEGIN + PROMPT 2 4 "Descrizione " + FLAGS "D" +END + + + TEXT DLG_NULL BEGIN - PROMPT 2 2 "Righe" + PROMPT 2 6 "Righe" GROUP G_DEFMOV END -SPREADSHEET F_RIGHE 77 15 +SPREADSHEET F_RIGHE 77 12 BEGIN - PROMPT 2 3 "RIGHE DI MOVIMENTO" + PROMPT 2 7 "RIGHE DI MOVIMENTO" FLAGS "A" -// USE LF_RMOVMAG KEY NRIG -// INPUT NUMREG F_NUMREG + USE LF_RMOVMAG KEY NRIG + INPUT NUMREG F_NUMREG ITEM "CodArt" ITEM "CodMag" ITEM "CodDep"