diff --git a/at/at6300.cpp b/at/at6300.cpp index 7894cc791..4a8cae0f2 100755 --- a/at/at6300.cpp +++ b/at/at6300.cpp @@ -157,8 +157,10 @@ bool TControlloDonazioni::preprocess_page(int file, int counter) break; case 'S': { - TString16 sezione = current_cursor()->curr(LF_SOGGETTI).get(SOG_CODSEZ); - TString16 sottog = current_cursor()->curr(LF_SOGGETTI).get(SOG_CODSOT); + //TString16 sezione = current_cursor()->curr(LF_SOGGETTI).get(SOG_CODSEZ); + //TString16 sottog = current_cursor()->curr(LF_SOGGETTI).get(SOG_CODSOT); + TString16 sezione = current_cursor()->curr().get(DON_CODSEZ); + TString16 sottog = current_cursor()->curr().get(DON_CODSOT); TString16 seznew = ""; seznew << sezione; seznew << "/"; @@ -263,16 +265,16 @@ void TControlloDonazioni::footer_stampa() rigastampa.overwrite((const char*)valore, pos); set_footer(7,rigastampa); - _giorni.destroy(); - _mesi.destroy(); - for (i=0;i<31;i++) - _giorni.add(new real(ZERO),i); - for (j=0;j<12;j++) - _mesi.add(new real(ZERO),j); } printer().formfeed(); reset_footer(); } + _giorni.destroy(); + _mesi.destroy(); + for (int i=0;i<31;i++) + _giorni.add(new real(ZERO),i); + for (int j=0;j<12;j++) + _mesi.add(new real(ZERO),j); } void TControlloDonazioni::fine_stampa() @@ -400,22 +402,34 @@ bool TControlloDonazioni::set_print(int m) chiave = "92->DATADON|"; break; case 'L': - chiave = "92->LUOGODON|92->DATADON|"; + //chiave = "92->LUOGODON|92->DATADON|"; + chiave = "92->LUOGODON|"; break; case 'S': - chiave = "90->CODSEZ|90->CODSOT|92->DATADON|"; + //chiave = "90->CODSEZ|90->CODSOT|92->DATADON|"; + //chiave = "92->CODSEZ|92->CODSOT|92->DATADON|"; + chiave = "92->CODSEZ|92->CODSOT|"; break; } switch (_ordinamento[0]) { case 'C': - chiave << "UPPER(90->COGNOME)|UPPER(90->NOME)"; + chiave << "92->DATADON|UPPER(90->COGNOME)|UPPER(90->NOME)"; break; case 'I': - chiave << "92->PROGINS"; + chiave << "92->DATADON|92->PROGINS"; break; case 'E': - chiave << "92->ETICHETTA"; + chiave << "92->DATADON|92->ETICHETTA"; + break; + case 'X': + chiave << "UPPER(90->COGNOME)|UPPER(90->NOME)|92->DATADON"; + break; + case 'Y': + chiave << "92->PROGINS|92->DATADON"; + break; + case 'Z': + chiave << "92->ETICHETTA|92->DATADON"; break; } TString256 filtro = ""; @@ -451,6 +465,7 @@ bool TControlloDonazioni::set_print(int m) fine << _sezfin; fine << _sotfin; // filtro per sezione/sottogruppo + /* if (inizio.not_empty()) { if (filtro.empty()) @@ -471,6 +486,28 @@ bool TControlloDonazioni::set_print(int m) } } } + */ + if (inizio.not_empty()) + { + if (filtro.empty()) + filtro = format("(92->CODSEZ+92->CODSOT >= \"%s\")",(const char*)inizio); + else + { + filtro << " && "; + filtro << format("(92->CODSEZ+92->CODSOT >= \"%s\")",(const char*)inizio); + } + if (fine.not_empty()) + { + if (filtro.empty()) + filtro = format("(92->CODSEZ+92->CODSOT <= \"%s\")",(const char*)fine); + else + { + filtro << " && "; + filtro << format("(92->CODSEZ+92->CODSOT <= \"%s\")",(const char*)fine); + } + } + } + // filtro per data TRectype da(LF_DONAZ); TRectype a (LF_DONAZ); diff --git a/at/at6300a.uml b/at/at6300a.uml index 366e34c9a..384ae39d7 100755 --- a/at/at6300a.uml +++ b/at/at6300a.uml @@ -4,12 +4,12 @@ PAGE "Stampa di controllo donazioni" -1 -1 78 20 GROUPBOX DLG_NULL 77 4 BEGIN - PROMPT 1 1 "Scelta sezione/sottogruppo" + PROMPT 1 0 "Scelta sezione/sottogruppo" END STRING F_SEZINI 2 BEGIN - PROMPT 2 2 "Da " + PROMPT 2 1 "Da " FLAGS "U" USE LF_SEZIONI INPUT CODSEZ F_SEZINI @@ -28,7 +28,7 @@ END STRING F_D_SEZINI 25 BEGIN - PROMPT 11 2 "" + PROMPT 11 1 "" FLAGS "U" USE LF_SEZIONI KEY 2 INPUT DENSEZ F_D_SEZINI @@ -43,15 +43,15 @@ END STRING F_SOTINI 2 BEGIN - PROMPT 2 3 " " + PROMPT 2 2 " " COPY ALL F_SEZINI CHECKTYPE SEARCH HELP "Codice sottogruppo da stampare" END STRING F_D_SOTINI 25 -BEGIN - PROMPT 11 3 "" +BEGIN + PROMPT 11 2 "" FLAGS "U" COPY USE F_D_SEZINI INPUT DENSEZ F_D_SEZINI @@ -64,7 +64,7 @@ END STRING F_SEZFIN 2 BEGIN - PROMPT 41 2 "A " + PROMPT 41 1 "A " FLAGS "U" USE LF_SEZIONI INPUT CODSEZ F_SEZFIN @@ -83,7 +83,7 @@ END STRING F_D_SEZFIN 25 BEGIN - PROMPT 49 2 "" + PROMPT 49 1 "" FLAGS "U" USE LF_SEZIONI KEY 2 INPUT DENSEZ F_D_SEZFIN @@ -98,7 +98,7 @@ END STRING F_SOTFIN 2 BEGIN - PROMPT 41 3 " " + PROMPT 41 2 " " COPY ALL F_SEZFIN CHECKTYPE SEARCH HELP "Codice sottogruppo finale" @@ -106,7 +106,7 @@ END STRING F_D_SOTFIN 25 BEGIN - PROMPT 49 3 "" + PROMPT 49 2 "" FLAGS "U" COPY USE F_D_SEZFIN INPUT DENSEZ F_D_SEZFIN @@ -119,26 +119,26 @@ END GROUPBOX DLG_NULL 77 7 BEGIN - PROMPT 1 5 "Opzioni per la stampa" + PROMPT 1 4 "Opzioni per la stampa" END DATA F_DATAINI BEGIN - PROMPT 2 6 "Donazioni dal " + PROMPT 2 5 "Donazioni dal " CHECKTYPE REQUIRED WARNING "Inserire la data iniziale" END DATA F_DATAFIN BEGIN - PROMPT 30 6 "al " + PROMPT 30 5 "al " CHECKTYPE REQUIRED WARNING "Inserire la data finale" END STRING F_TIPODON 2 BEGIN - PROMPT 2 7 "Tipo donazioni " + PROMPT 2 6 "Tipo donazioni " FLAGS "U" USE TDN INPUT CODTAB F_TIPODON @@ -152,13 +152,13 @@ END STRING F_D_TIPODON 30 BEGIN - PROMPT 26 7 "" + PROMPT 26 6 "" FLAGS "D" END STRING F_LUOGODON 4 BEGIN - PROMPT 2 8 "Punto prelievo " + PROMPT 2 7 "Punto prelievo " FLAGS "U" USE LDN INPUT CODTAB F_LUOGODON @@ -172,28 +172,28 @@ END STRING F_D_LUOGODON 50 30 BEGIN - PROMPT 26 8 "" + PROMPT 26 7 "" FLAGS "D" END BOOLEAN F_PRIMEDON BEGIN - PROMPT 2 9 "Stampa solo prime donazioni" + PROMPT 2 8 "Stampa solo prime donazioni" END BOOLEAN F_BREVE BEGIN - PROMPT 36 9 "Formato di stampa breve" + PROMPT 36 8 "Formato di stampa breve" END BOOLEAN F_RIEPFINALE BEGIN - PROMPT 2 10 "Riepilogo mensile e annuale a fine pagina" + PROMPT 2 9 "Riepilogo mensile e annuale a fine pagina" END RADIOBUTTON F_TIPOSTAMPA 25 BEGIN - PROMPT 1 12 "Stampa per " + PROMPT 1 11 "Stampa per " ITEM "D|Data donazione" ITEM "L|Punto prelievo" ITEM "S|Sezione/Sottogruppo" @@ -201,10 +201,13 @@ END RADIOBUTTON F_ORDINAMENTO 35 BEGIN - PROMPT 30 12 "Ordinamento per data donazione e ..." - ITEM "C|Cognome e nome" - ITEM "I|Inserimento" - ITEM "E|Etichetta sacca" + PROMPT 30 11 "Ordinamento per" + ITEM "C|Data don. e cognome e nome" + ITEM "I|Data don. e Inserimento" + ITEM "E|Data don. e etichetta sacca" + ITEM "X|Cognome e nome e data don." + ITEM "Y|Inserimento e data don. " + ITEM "Z|Etichetta sacca e data don." END BUTTON DLG_OK 9 2