diff --git a/ca/ca0800.cpp b/ca/ca0800.cpp index e6ebbdeee..94f8bc51f 100755 --- a/ca/ca0800.cpp +++ b/ca/ca0800.cpp @@ -289,7 +289,9 @@ class TRiparti_app : public TRelation_application void spezza_campo(const TString& str, TToken_string& row, int first) const; void read_rows(); -protected: +protected: + virtual const char * extra_modules() const {return "cm";} //funziona anche con autorizzazione CM + virtual bool user_create(); virtual bool user_destroy(); virtual int write(const TMask& m); diff --git a/ca/ca2300a.uml b/ca/ca2300a.uml index 09a8e841b..133f38d64 100755 --- a/ca/ca2300a.uml +++ b/ca/ca2300a.uml @@ -42,7 +42,7 @@ END NUMBER F_FIRST_ANNO 4 BEGIN PROMPT 3 7 "Primo esercizio interessato " - FLAGS "D" + FLAGS "L" END ENDPAGE diff --git a/ca/ca3200a.rep b/ca/ca3200a.rep index 3ae1cb9fc..14dd85108 100755 --- a/ca/ca3200a.rep +++ b/ca/ca3200a.rep @@ -1,4 +1,4 @@ - + Mastrini CA @@ -170,7 +170,22 @@ THEN
-
+
+ + + + + + + + + + + + + #101-#102 + +
@@ -181,9 +196,11 @@ THEN + MESSAGE ADD,F1.101 + MESSAGE ADD,F1.102 diff --git a/ca/cacmmenu.men b/ca/cacmmenu.men index 4a850bc4e..b350a1bbf 100755 --- a/ca/cacmmenu.men +++ b/ca/cacmmenu.men @@ -18,6 +18,7 @@ Item_02 = "Commesse", "ca0 -5", "SF" Item_03 = "Fasi", "ca0 -6", "SF" Item_04 = "Stampa Commesse", "ca1 -5", "F" Item_05 = "Stampa Fasi", "ca1 -6", "F" +Item_06 = "Tabelle di ripartizione", "ca0 -7", "F" [CMMENU_040] Caption = "Stampe" diff --git a/ca/cacnv.cpp b/ca/cacnv.cpp index 96ba4399f..50e0cceac 100755 --- a/ca/cacnv.cpp +++ b/ca/cacnv.cpp @@ -2,6 +2,7 @@ #include #include +#include #include #include "../cg/cg2101.h" @@ -123,6 +124,7 @@ protected: bool test_configuration(); void ripartisci(TRectype& recpcon); void check_phase(const TRectype& analriga); + void set_caus_anal(const TString& codcaus) const; public: bool convert_clerks(); @@ -401,6 +403,22 @@ void TConversione_cm2ca::check_phase(const TRectype& analriga) } } +void TConversione_cm2ca::set_caus_anal(const TString& codcaus) const +{ + TLocalisamfile causali(LF_CAUSALI); + causali.put(CAU_CODCAUS, codcaus); + int err = causali.read(); + if (err == NOERR) + { + const bool is_anal = causali.get_bool(CAU_MOVIND); + if (!is_anal) + { + causali.put(CAU_MOVIND, "X"); + causali.rewrite(); + } + } +} + void TConversione_cm2ca::create_new_movana(long numreg_cg, bool definitiva, TAssoc_array& cg_lines_to_anal) { TLocalisamfile f(LF_MOVANA); @@ -420,6 +438,9 @@ void TConversione_cm2ca::create_new_movana(long numreg_cg, bool definitiva, TAss analmov.put(MOVANA_TIPODOC, mov_head.get(MOV_TIPODOC)); analmov.put(MOVANA_DESCR, mov_head.get(MOV_DESCR)); analmov.put(MOVANA_CODCAUS, mov_head.get(MOV_CODCAUS)); + //deve anche mettere il flag di analitica alla causale! + set_caus_anal(mov_head.get(MOV_CODCAUS)); + if (definitiva) analmov.put(MOVANA_TRASFERITO, " "); else