diff --git a/m770/77qa.frm b/m770/77qa.frm index 7a5d4dc3e..924883604 100755 --- a/m770/77qa.frm +++ b/m770/77qa.frm @@ -76,7 +76,7 @@ END STRINGA 6 BEGIN KEY "SESSO" - PROMPT 59 14 "" + PROMPT 58 14 "" GROUP 1 FIELD 108@->SESSO END @@ -84,7 +84,7 @@ END STRINGA 7 BEGIN KEY "DATA DI NASCITA" - PROMPT 64 14 "" + PROMPT 67 14 "" GROUP 1 FIELD 108@->DATANASC END @@ -92,7 +92,7 @@ END STRINGA 8 BEGIN KEY "COMUNE DI NASCITA" - PROMPT 86 14 "" + PROMPT 84 14 "" GROUP 1 FIELD 113@->DENCOM END @@ -100,7 +100,7 @@ END STRINGA 9 BEGIN KEY "PROV. DI NASCITA" - PROMPT 128 14 "" + PROMPT 125 14 "" GROUP 1 FIELD 113@->PROVCOM END @@ -122,7 +122,7 @@ END STRINGA 12 BEGIN KEY "VIA di RES." - PROMPT 68 16 "" + PROMPT 66 16 "" FIELD 106@->INDRF END @@ -136,20 +136,20 @@ END STRINGA 16 BEGIN KEY "CAP" - PROMPT 125 16 "" + PROMPT 123 16 "" FIELD 106@->CAPRF END STRINGA 13 BEGIN KEY "CODICE FISCALE DEL SOGGETTO DICHIARANTE" - PROMPT 87 19 "" + PROMPT 85 19 "" END NUMERO 14 BEGIN KEY "NUM. FOGLIO" - PROMPT 125 19 "" + PROMPT 125 22 "" END END @@ -180,7 +180,7 @@ END DATA 4 BEGIN KEY "DATA NASCITA" - PROMPT 115 1 "" + PROMPT 114 1 "" FIELD 45->DATANA FORMAT "1444-" END @@ -188,7 +188,7 @@ END STRINGA 5 BEGIN KEY "SESSO" - PROMPT 131 1 "" + PROMPT 128 1 "" FIELD 45->SESSO END @@ -216,7 +216,7 @@ END STRINGA 9 BEGIN KEY "PROV. RESIDENZA" - PROMPT 89 3 "" + PROMPT 88 3 "" FIELD 45->PROVRES END @@ -230,7 +230,7 @@ END STRINGA 11 BEGIN KEY "STATO CIVILE" - PROMPT 11 5 "" + PROMPT 13 5 "" FIELD 45->STATOCIV END @@ -265,15 +265,16 @@ END DATA 16 BEGIN KEY "DATA FINE RAPPORTO" - PROMPT 61 5 "" + PROMPT 63 5 "" FORMAT "1444-" PICTURE "## ^ ##^^^^^" + FIELD 44->DATAFR END NUMERO 17 BEGIN KEY "GIORNI DETRAZ. LAV. DIP." - PROMPT 68 5 "" + PROMPT 80 5 "" FIELD 44->NORIT END @@ -294,8 +295,8 @@ END NUMERO 20 BEGIN KEY "IN DENARO" - PROMPT 11 7 "" - PICTURE "###.###.###^^^" + PROMPT 9 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->20 FIELD 44->DENARO END @@ -303,8 +304,8 @@ END NUMERO 21 BEGIN KEY "IN NATURA" - PROMPT 26 7 "" - PICTURE "###.###.###^^^" + PROMPT 24 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->21 FIELD 44->NATURA END @@ -312,8 +313,8 @@ END NUMERO 22 BEGIN KEY "CONTRIBUTI OBBLIGATORI" - PROMPT 42 7 "" - PICTURE "###.###.###^^^" + PROMPT 40 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->22 FIELD 44->COBBDIP END @@ -321,8 +322,8 @@ END NUMERO 23 BEGIN KEY "COMPENSI NETTI" - PROMPT 58 7 "" - PICTURE "###.###.###^^^" + PROMPT 54 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->23 FIELD 44->COMPNETTI END @@ -330,8 +331,8 @@ END NUMERO 24 BEGIN KEY "AMMONTARE LORDO" - PROMPT 73 7 "" - PICTURE "###.###.###^^^" + PROMPT 69 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->24 FIELD 44->AMMLORDO END @@ -339,8 +340,8 @@ END NUMERO 25 BEGIN KEY "IND.ASS.CONTRIBUTI OBBLIGATORI" - PROMPT 89 7 "" - PICTURE "###.###.###^^^" + PROMPT 85 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->25 FIELD 44->IACOBBCD END @@ -348,8 +349,8 @@ END NUMERO 26 BEGIN KEY "SOMME NON ASSOG. A RITEN." - PROMPT 103 7 "" - PICTURE "###.###.###^^^" + PROMPT 101 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->26 FIELD 44->NORIT END @@ -357,8 +358,8 @@ END NUMERO 27 BEGIN KEY "TOTALE IMPONIBILE" - PROMPT 120 7 "" - PICTURE "###.###.###^^^" + PROMPT 117 7 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->27 FIELD 44->TOTIMP END @@ -366,8 +367,8 @@ END NUMERO 28 BEGIN KEY "ASSEGNI ED INDENNITA'" - PROMPT 11 9 "" - PICTURE "###.###.###^^^" + PROMPT 9 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->28 FIELD 44->AIENTIPREV END @@ -375,8 +376,8 @@ END NUMERO 29 BEGIN KEY "AMMONTARE COMPENSI CORRISPOSTI DA TERZI" - PROMPT 26 9 "" - PICTURE "###.###.###^^^" + PROMPT 24 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->29 FIELD 44->CCTAMMCONT END @@ -384,8 +385,8 @@ END NUMERO 30 BEGIN KEY "TOTALE IMPONIBILE 2" - PROMPT 42 9 "" - PICTURE "###.###.###^^^" + PROMPT 40 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->30 FIELD 44->TOTIMP2 END @@ -393,8 +394,8 @@ END NUMERO 31 BEGIN KEY "IMPOSTA CORRISPONDENTE" - PROMPT 58 9 "" - PICTURE "###.###.###^^^" + PROMPT 54 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->31 FIELD 44->ICTOTIMP END @@ -402,8 +403,8 @@ END NUMERO 32 BEGIN KEY "DETRAZIONE PER CONIUGE A CARICO" - PROMPT 73 9 "" - PICTURE "###.###.###^^^" + PROMPT 69 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->32 FIELD 44->DETCC END @@ -411,8 +412,8 @@ END NUMERO 33 BEGIN KEY "DETRAZIONE PER FIGLI A CARICO" - PROMPT 89 9 "" - PICTURE "###.###.###^^^" + PROMPT 85 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->33 FIELD 44->DETFC END @@ -420,8 +421,8 @@ END NUMERO 34 BEGIN KEY "DETRAZIONE PER ALTRI FAMILIARI A CARICO" - PROMPT 104 9 "" - PICTURE "###.###.###^^^" + PROMPT 101 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->34 FIELD 44->DETAF END @@ -429,8 +430,8 @@ END NUMERO 35 BEGIN KEY "DETRAZIONE PER LAVORO DIPENDENTE" - PROMPT 120 9 "" - PICTURE "###.###.###^^^" + PROMPT 117 9 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->35 FIELD 44->DETLD END @@ -438,8 +439,8 @@ END NUMERO 36 BEGIN KEY "DETRAZIONE PER ONERI" - PROMPT 11 11 "" - PICTURE "###.###.###^^^" + PROMPT 9 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->36 FIELD 44->DETO END @@ -447,8 +448,8 @@ END NUMERO 37 BEGIN KEY "TOTALE DETRAZIONI" - PROMPT 26 11 "" - PICTURE "###.###.###^^^" + PROMPT 24 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->37 FIELD 44->TOTDET END @@ -456,8 +457,8 @@ END NUMERO 38 BEGIN KEY "INCREMENTO DETRAZIONI PER FIGLI A CARICO" - PROMPT 42 11 "" - PICTURE "###.###.###^^^" + PROMPT 40 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->38 FIELD 44->INCDETFC END @@ -465,8 +466,8 @@ END NUMERO 39 BEGIN KEY "RITENUTE OPERATE DA TERZI" - PROMPT 58 11 "" - PICTURE "###.###.###^^^" + PROMPT 54 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->39 FIELD 44->AMRIOT END @@ -474,8 +475,8 @@ END NUMERO 40 BEGIN KEY "RITENUTE OPERATE DAL DATORE DI LAVORO" - PROMPT 73 11 "" - PICTURE "###.###.###^^^" + PROMPT 69 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->40 FIELD 44->AMRIODL END @@ -483,8 +484,8 @@ END NUMERO 41 BEGIN KEY "ECCEDENZA RITENUTE RIMBORSATE" - PROMPT 89 11 "" - PICTURE "###.###.###^^^" + PROMPT 85 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->41 FIELD 44->ECCRITRIMB END @@ -492,8 +493,8 @@ END NUMERO 42 BEGIN KEY "AMMONTARE RITENUTE DOVUTE" - PROMPT 104 11 "" - PICTURE "###.###.###^^^" + PROMPT 101 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->42 FIELD 44->AMMRITDOV END @@ -501,8 +502,8 @@ END NUMERO 43 BEGIN KEY "EROGAZIONI PER SPESE SANITARIE" - PROMPT 120 11 "" - PICTURE "###.###.###^^^" + PROMPT 117 11 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->43 FIELD 44->ERSPSAN END @@ -510,8 +511,8 @@ END NUMERO 44 BEGIN KEY "PREMI DI ASSICURAZIONE VITA E INFORTUNI" - PROMPT 11 13 "" - PICTURE "###.###.###^^^" + PROMPT 9 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->44 FIELD 44->PRASSVI END @@ -519,8 +520,8 @@ END NUMERO 45 BEGIN KEY "CONTRIBUTI PER PREVIDENZA COMPLEMENTARE" - PROMPT 26 13 "" - PICTURE "###.###.###^^^" + PROMPT 24 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->45 FIELD 44->CONPRECO END @@ -528,8 +529,8 @@ END NUMERO 46 BEGIN KEY "CONTRIBUTI OBBLIGATORI A CARICO DEL DIPENDENTE" - PROMPT 42 13 "" - PICTURE "###.###.###^^^" + PROMPT 40 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->46 FIELD 44->COBBDIP2 END @@ -537,8 +538,8 @@ END NUMERO 47 BEGIN KEY "AMMONTARE IMPONIBILE" - PROMPT 58 13 "" - PICTURE "###.###.###^^^" + PROMPT 54 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->47 FIELD 44->AMMIMP END @@ -546,8 +547,8 @@ END NUMERO 48 BEGIN KEY "DETRAZIONI D'IMPOSTA" - PROMPT 73 13 "" - PICTURE "###.###.###^^^" + PROMPT 69 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->48 FIELD 44->DETIMPOS END @@ -555,8 +556,8 @@ END NUMERO 49 BEGIN KEY "RITENUTA ESEGUITA" - PROMPT 89 13 "" - PICTURE "###.###.###^^^" + PROMPT 85 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->49 FIELD 44->RITESEG END @@ -564,8 +565,8 @@ END NUMERO 50 BEGIN KEY "ALTRE SOMME E VALORI NON ASSOGGETTATI A RITENUTA" - PROMPT 104 13 "" - PICTURE "###.###.###^^^" + PROMPT 101 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->50 FIELD 44->SVNASSRI END @@ -573,16 +574,16 @@ END NUMERO 51 BEGIN KEY "AMMONTARE IMPONIBILE AI FINI DEL C.S.S.N." - PROMPT 120 13 "" - PICTURE "###.###.###^^^" + PROMPT 117 13 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->51 FIELD 44->AIFCSSN END -NUMERO 52 +STRINGA 52 BEGIN KEY "CONGUAGLI NON EFFETTUATI" - PROMPT 11 15 "" + PROMPT 13 15 "" FIELD 44->CNEFF END @@ -598,9 +599,10 @@ END NUMERO 54 BEGIN KEY "INTERESSI" - PROMPT 33 15 "" + PROMPT 32 15 "" MESSAGE ADD,FL->54 FIELD 44->INTERE + PICTURE "###.###.###^^^" END NUMERO 55 @@ -621,14 +623,14 @@ BEGIN FIELD 44->INTERE2 END -NUMERO 57 +STRINGA 57 BEGIN KEY "CONGUAGLI NON EFFETTUATI" PROMPT 72 15 "" FIELD 44->CNEFF END -NUMERO 58 +STRINGA 58 BEGIN KEY "RETTIFICA CONGUAGLIO" PROMPT 80 15 "" @@ -638,8 +640,8 @@ END NUMERO 59 BEGIN KEY "IMPOSTA RIMBORSATA" - PROMPT 89 15 "" - PICTURE "###.###.###^^^" + PROMPT 85 15 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->59 FIELD 44->IMPRIMB END @@ -647,8 +649,8 @@ END NUMERO 60 BEGIN KEY "IMPOSTA VERSATA" - PROMPT 103 15 "" - PICTURE "###.###.###^^^" + PROMPT 101 15 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->60 FIELD 44->IMPVER END @@ -656,8 +658,8 @@ END NUMERO 61 BEGIN KEY "INTERESSI" - PROMPT 120 15 "" - PICTURE "###.###.###^^^" + PROMPT 117 15 "" + PICTURE "###.###.###.###^^^" MESSAGE ADD,FL->61 FIELD 44->INTIRPEF END @@ -666,7 +668,7 @@ NUMERO 62 BEGIN KEY "IMPOSTA VERSATA" PROMPT 11 17 "" - PICTURE "###.###.###^^^" + PICTURE "###.###^^^" MESSAGE ADD,FL->62 FIELD 44->IMPVER2 END @@ -675,7 +677,7 @@ NUMERO 63 BEGIN KEY "INTERESSI" PROMPT 23 17 "" - PICTURE "###.###.###^^^" + PICTURE "###.###^^^" MESSAGE ADD,FL->63 FIELD 44->INTER END @@ -684,7 +686,7 @@ NUMERO 64 BEGIN KEY "SOPPRATTASSA SU IRPEF" PROMPT 33 17 "" - PICTURE "###.###.###^^^" + PICTURE "###.###^^^" MESSAGE ADD,FL->64 FIELD 44->STSIRPEF END @@ -692,7 +694,7 @@ END NUMERO 65 BEGIN KEY "CONTRIBUTO A RIMBORSO" - PROMPT 45 17 "" + PROMPT 44 17 "" PICTURE "###.###.###^^^" MESSAGE ADD,FL->65 FIELD 44->CONRIMB @@ -701,7 +703,7 @@ END NUMERO 66 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 59 17 "" + PROMPT 58 17 "" PICTURE "###.###.###^^^" MESSAGE ADD,FL->66 FIELD 44->CONVER @@ -710,7 +712,7 @@ END NUMERO 67 BEGIN KEY "INTERESSI" - PROMPT 73 17 "" + PROMPT 72 17 "" PICTURE "###.###.###^^^" MESSAGE ADD,FL->67 FIELD 44->INTER2 @@ -719,7 +721,7 @@ END NUMERO 68 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 87 17 "" + PROMPT 85 17 "" PICTURE "###.###.###^^^" MESSAGE ADD,FL->68 FIELD 44->CONVER2 @@ -728,7 +730,7 @@ END NUMERO 69 BEGIN KEY "INTERESSI" - PROMPT 101 17 "" + PROMPT 100 17 "" PICTURE "###.###.###^^^" MESSAGE ADD,FL->69 FIELD 44->INTER3 @@ -737,13 +739,13 @@ END NUMERO 70 BEGIN KEY "SOPPRATTASE SU C.S.S.N." - PROMPT 115 17 "" + PROMPT 114 17 "" PICTURE "###.###.###^^^" MESSAGE ADD,FL->70 FIELD 44->STSCSSN70 END -NUMERO 71 +STRINGA 71 BEGIN KEY "MODELLO 730 NON LIQUIDABILE" PROMPT 129 17 "" @@ -778,225 +780,225 @@ SECTION FOOTER LAST 12 NUMERO 20 BEGIN KEY "IN DENARO" - PROMPT 11 1 "" - PICTURE "###.###.###^^^" + PROMPT 9 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 21 BEGIN KEY "IN NATURA" - PROMPT 26 1 "" - PICTURE "###.###.###^^^" + PROMPT 24 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 22 BEGIN KEY "CONTRIBUTI OBBLIGATORI" - PROMPT 42 1 "" - PICTURE "###.###.###^^^" + PROMPT 40 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 23 BEGIN KEY "COMPENSI NETTI" - PROMPT 58 1 "" - PICTURE "###.###.###^^^" + PROMPT 54 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 24 BEGIN KEY "AMMONTARE LORDO" - PROMPT 73 1 "" - PICTURE "###.###.###^^^" + PROMPT 69 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 25 BEGIN KEY "IND.ASS.CONTRIBUTI OBBLIGATORI" - PROMPT 89 1 "" - PICTURE "###.###.###^^^" + PROMPT 85 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 26 BEGIN KEY "SOMME NON ASSOG. A RITEN." - PROMPT 103 1 "" - PICTURE "###.###.###^^^" + PROMPT 101 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 27 BEGIN KEY "TOTALE IMPONIBILE" - PROMPT 120 1 "" - PICTURE "###.###.###^^^" + PROMPT 117 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 28 BEGIN KEY "ASSEGNI ED INDENNITA'" - PROMPT 11 3 "" - PICTURE "###.###.###^^^" + PROMPT 9 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 29 BEGIN KEY "AMMONTARE COMPENSI CORRISPOSTI DA TERZI" - PROMPT 26 3 "" - PICTURE "###.###.###^^^" + PROMPT 24 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 30 BEGIN KEY "TOTALE IMPONIBILE 2" - PROMPT 42 3 "" - PICTURE "###.###.###^^^" + PROMPT 40 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 31 BEGIN KEY "IMPOSTA CORRISPONDENTE" - PROMPT 58 3 "" - PICTURE "###.###.###^^^" + PROMPT 54 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 32 BEGIN KEY "DETRAZIONE PER CONIUGE A CARICO" - PROMPT 73 3 "" - PICTURE "###.###.###^^^" + PROMPT 69 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 33 BEGIN KEY "DETRAZIONE PER FIGLI A CARICO" - PROMPT 89 3 "" - PICTURE "###.###.###^^^" + PROMPT 85 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 34 BEGIN KEY "DETRAZIONE PER ALTRI FAMILIARI A CARICO" - PROMPT 104 3 "" - PICTURE "###.###.###^^^" + PROMPT 101 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 35 BEGIN KEY "DETRAZIONE PER LAVORO DIPENDENTE" - PROMPT 120 3 "" - PICTURE "###.###.###^^^" + PROMPT 117 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 36 BEGIN KEY "DETRAZIONE PER ONERI" - PROMPT 11 5 "" - PICTURE "###.###.###^^^" + PROMPT 9 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 37 BEGIN KEY "TOTALE DETRAZIONI" - PROMPT 26 5 "" - PICTURE "###.###.###^^^" + PROMPT 24 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 38 BEGIN KEY "INCREMENTO DETRAZIONI PER FIGLI A CARICO" - PROMPT 42 5 "" - PICTURE "###.###.###^^^" + PROMPT 40 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 39 BEGIN KEY "RITENUTE OPERATE DA TERZI" - PROMPT 58 5 "" - PICTURE "###.###.###^^^" + PROMPT 54 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 40 BEGIN KEY "RITENUTE OPERATE DAL DATORE DI LAVORO" - PROMPT 73 5 "" - PICTURE "###.###.###^^^" + PROMPT 69 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 41 BEGIN KEY "ECCEDENZA RITENUTE RIMBORSATE" - PROMPT 89 5 "" - PICTURE "###.###.###^^^" + PROMPT 85 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 42 BEGIN KEY "AMMONTARE RITENUTE DOVUTE" - PROMPT 104 5 "" - PICTURE "###.###.###^^^" + PROMPT 101 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 43 BEGIN KEY "EROGAZIONI PER SPESE SANITARIE" - PROMPT 120 5 "" - PICTURE "###.###.###^^^" + PROMPT 117 5 "" + PICTURE "###.###.###.###^^^" END NUMERO 44 BEGIN KEY "PREMI DI ASSICURAZIONE VITA E INFORTUNI" - PROMPT 11 7 "" - PICTURE "###.###.###^^^" + PROMPT 9 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 45 BEGIN KEY "CONTRIBUTI PER PREVIDENZA COMPLEMENTARE" - PROMPT 26 7 "" - PICTURE "###.###.###^^^" + PROMPT 24 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 46 BEGIN KEY "CONTRIBUTI OBBLIGATORI A CARICO DEL DIPENDENTE" - PROMPT 42 7 "" - PICTURE "###.###.###^^^" + PROMPT 40 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 47 BEGIN KEY "AMMONTARE IMPONIBILE" - PROMPT 58 7 "" - PICTURE "###.###.###^^^" + PROMPT 54 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 48 BEGIN KEY "DETRAZIONI D'IMPOSTA" - PROMPT 73 7 "" - PICTURE "###.###.###^^^" + PROMPT 69 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 49 BEGIN KEY "RITENUTA ESEGUITA" - PROMPT 89 7 "" - PICTURE "###.###.###^^^" + PROMPT 85 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 50 BEGIN KEY "ALTRE SOMME E VALORI NON ASSOGGETTATI A RITENUTA" - PROMPT 104 7 "" - PICTURE "###.###.###^^^" + PROMPT 101 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 51 BEGIN KEY "AMMONTARE IMPONIBILE AI FINI DEL C.S.S.N." - PROMPT 120 7 "" - PICTURE "###.###.###^^^" + PROMPT 117 7 "" + PICTURE "###.###.###.###^^^" END NUMERO 53 @@ -1009,7 +1011,7 @@ END NUMERO 54 BEGIN KEY "INTERESSI" - PROMPT 33 9 "" + PROMPT 32 9 "" PICTURE "###.###.###^^^" END @@ -1030,84 +1032,84 @@ END NUMERO 59 BEGIN KEY "IMPOSTA RIMBORSATA" - PROMPT 89 9 "" - PICTURE "###.###.###^^^" + PROMPT 85 9 "" + PICTURE "###.###.###.###^^^" END NUMERO 60 BEGIN KEY "IMPOSTA VERSATA" - PROMPT 103 9 "" - PICTURE "###.###.###^^^" + PROMPT 101 9 "" + PICTURE "###.###.###.###^^^" END NUMERO 61 BEGIN KEY "INTERESSI" - PROMPT 120 9 "" - PICTURE "###.###.###^^^" + PROMPT 117 9 "" + PICTURE "###.###.###.###^^^" END NUMERO 62 BEGIN KEY "IMPOSTA VERSATA" PROMPT 11 11 "" - PICTURE "###.###.###^^^" + PICTURE "###.###^^^" END NUMERO 63 BEGIN KEY "INTERESSI" PROMPT 23 11 "" - PICTURE "###.###.###^^^" + PICTURE "###.###^^^" END NUMERO 64 BEGIN KEY "SOPPRATTASSA SU IRPEF" PROMPT 33 11 "" - PICTURE "###.###.###^^^" + PICTURE "###.###^^^" END NUMERO 65 BEGIN KEY "CONTRIBUTO A RIMBORSO" - PROMPT 45 11 "" + PROMPT 44 11 "" PICTURE "###.###.###^^^" END NUMERO 66 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 59 11 "" + PROMPT 58 11 "" PICTURE "###.###.###^^^" END NUMERO 67 BEGIN KEY "INTERESSI" - PROMPT 73 11 "" + PROMPT 72 11 "" PICTURE "###.###.###^^^" END NUMERO 68 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 87 11 "" + PROMPT 85 11 "" PICTURE "###.###.###^^^" END NUMERO 69 BEGIN KEY "INTERESSI" - PROMPT 101 11 "" + PROMPT 100 11 "" PICTURE "###.###.###^^^" END NUMERO 70 BEGIN KEY "SOPPRATTASE SU C.S.S.N." - PROMPT 115 11 "" + PROMPT 114 11 "" PICTURE "###.###.###^^^" END diff --git a/m770/77qa1.frm b/m770/77qa1.frm index 5f24655d3..a32db60fc 100755 --- a/m770/77qa1.frm +++ b/m770/77qa1.frm @@ -76,7 +76,7 @@ END STRINGA 6 BEGIN KEY "SESSO" - PROMPT 59 15 "" + PROMPT 58 15 "" GROUP 1 FIELD 108@->SESSO END @@ -84,7 +84,7 @@ END STRINGA 7 BEGIN KEY "DATA DI NASCITA" - PROMPT 64 15 "" + PROMPT 67 15 "" GROUP 1 FIELD 108@->DATANASC END @@ -92,7 +92,7 @@ END STRINGA 8 BEGIN KEY "COMUNE DI NASCITA" - PROMPT 86 15 "" + PROMPT 84 15 "" GROUP 1 FIELD 113@->DENCOM END @@ -100,7 +100,7 @@ END STRINGA 9 BEGIN KEY "PROV. DI NASCITA" - PROMPT 128 15 "" + PROMPT 126 15 "" GROUP 1 FIELD 113@->PROVCOM END @@ -122,7 +122,7 @@ END STRINGA 12 BEGIN KEY "VIA di RES." - PROMPT 68 17 "" + PROMPT 66 17 "" FIELD 106@->INDRF END @@ -149,7 +149,7 @@ END NUMERO 14 BEGIN KEY "NUM. FOGLIO" - PROMPT 125 24 "" + PROMPT 125 23 "" END END @@ -202,7 +202,7 @@ END STRINGA 7 BEGIN KEY "PROV DI NASCITA" - PROMPT 51 3 "" + PROMPT 48 3 "" FIELD 45->PROVNA END @@ -216,8 +216,8 @@ END NUMERO 9 BEGIN KEY "IMPOSTA RIMBORSATA" - PROMPT 23 5 "" - PICTURE "###.###.###^^^" + PROMPT 25 5 "" + PICTURE "###.###.###.###^^^" FIELD 56->IMPRIMB9 MESSAGE ADD,FL->9 END @@ -225,8 +225,8 @@ END NUMERO 10 BEGIN KEY "IMPOSTA VERSATA" - PROMPT 42 5 "" - PICTURE "###.###.###^^^" + PROMPT 44 5 "" + PICTURE "###.###.###.###^^^" FIELD 56->IMPVERS10 MESSAGE ADD,FL->10 END @@ -234,8 +234,8 @@ END NUMERO 11 BEGIN KEY "INTERESSI" - PROMPT 61 5 "" - PICTURE "###.###.###^^^" + PROMPT 63 5 "" + PICTURE "###.###.###.###^^^" FIELD 56->INTER11 MESSAGE ADD,FL->11 END @@ -243,8 +243,8 @@ END NUMERO 12 BEGIN KEY "IMPOSTA VERSATA" - PROMPT 79 5 "" - PICTURE "###.###.###^^^" + PROMPT 81 5 "" + PICTURE "###.###.###.###^^^" FIELD 56->IMPVERS12 MESSAGE ADD,FL->12 END @@ -252,8 +252,8 @@ END NUMERO 13 BEGIN KEY "INTERESSI" - PROMPT 98 5 "" - PICTURE "###.###.###^^^" + PROMPT 100 5 "" + PICTURE "###.###.###.###^^^" FIELD 56->INTER13 MESSAGE ADD,FL->13 END @@ -261,8 +261,8 @@ END NUMERO 14 BEGIN KEY "SOPRATTASSA SU IRPEF" - PROMPT 117 5 "" - PICTURE "###.###.###^^^" + PROMPT 116 5 "" + PICTURE "###.###.###.###^^^" FIELD 56->STASSA14 MESSAGE ADD,FL->14 END @@ -271,7 +271,7 @@ NUMERO 15 BEGIN KEY "CONTRIBUTO A RIMBORSO" PROMPT 11 7 "" - PICTURE "###.###.###^^^" + PICTURE "###.###.###.###^^^" FIELD 56->CONTRIMB15 MESSAGE ADD,FL->15 END @@ -279,8 +279,8 @@ END NUMERO 16 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 28 7 "" - PICTURE "###.###.###^^^" + PROMPT 30 7 "" + PICTURE "###.###.###.###^^^" FIELD 56->CONTVERS16 MESSAGE ADD,FL->16 END @@ -288,8 +288,8 @@ END NUMERO 17 BEGIN KEY "INTERESSI" - PROMPT 47 7 "" - PICTURE "###.###.###^^^" + PROMPT 49 7 "" + PICTURE "###.###.###.###^^^" FIELD 56->INTER17 MESSAGE ADD,FL->17 END @@ -297,8 +297,8 @@ END NUMERO 18 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 66 7 "" - PICTURE "###.###.###^^^" + PROMPT 68 7 "" + PICTURE "###.###.###.###^^^" FIELD 56->CONTVER18 MESSAGE ADD,FL->18 END @@ -306,8 +306,8 @@ END NUMERO 19 BEGIN KEY "INTERESSI" - PROMPT 84 7 "" - PICTURE "###.###.###^^^" + PROMPT 86 7 "" + PICTURE "###.###.###.###^^^" FIELD 56->INTER19 MESSAGE ADD,FL->19 END @@ -316,7 +316,7 @@ NUMERO 20 BEGIN KEY "SOPRATTASSA SU IRPEF" PROMPT 102 7 "" - PICTURE "###.###.###^^^" + PICTURE "###.###.###.###^^^" FIELD 56->STASSA20 MESSAGE ADD,FL->20 END @@ -324,14 +324,14 @@ END STRINGA 21 BEGIN KEY "CONGUAGLI NON EFFETTUATI" - PROMPT 121 7 "" + PROMPT 122 7 "" FIELD 56->CONNEFF21 END STRINGA 22 BEGIN KEY "TIPO CONGUAGLIO" - PROMPT 128 7 "" + PROMPT 129 7 "" FIELD 56->TIPOCONG22 END @@ -345,14 +345,14 @@ END STRINGA 24 BEGIN KEY "DENOMINAZIONE CAAF" - PROMPT 42 9 "" + PROMPT 43 9 "" FIELD 104@->S0 END NUMERO 25 BEGIN KEY "NUMERO ISCRIZIONE ALBO" - PROMPT 98 9 "" + PROMPT 101 9 "" FIELD 104@->I1 END @@ -372,85 +372,85 @@ SECTION FOOTER LAST 4 NUMERO 9 BEGIN KEY "IMPOSTA RIMBORSATA" - PROMPT 23 1 "" - PICTURE "###.###.###^^^" + PROMPT 25 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 10 BEGIN KEY "IMPOSTA VERSATA" - PROMPT 42 1 "" - PICTURE "###.###.###^^^" + PROMPT 44 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 11 BEGIN KEY "INTERESSI" - PROMPT 61 1 "" - PICTURE "###.###.###^^^" + PROMPT 63 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 12 BEGIN KEY "IMPOSTA VERSATA" - PROMPT 79 1 "" - PICTURE "###.###.###^^^" + PROMPT 81 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 13 BEGIN KEY "INTERESSI" - PROMPT 98 1 "" - PICTURE "###.###.###^^^" + PROMPT 100 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 14 BEGIN KEY "SOPRATTASSA SU IRPEF" - PROMPT 117 1 "" - PICTURE "###.###.###^^^" + PROMPT 116 1 "" + PICTURE "###.###.###.###^^^" END NUMERO 15 BEGIN KEY "CONTRIBUTO A RIMBORSO" PROMPT 11 3 "" - PICTURE "###.###.###^^^" + PICTURE "###.###.###.###^^^" END NUMERO 16 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 28 3 "" - PICTURE "###.###.###^^^" + PROMPT 30 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 17 BEGIN KEY "INTERESSI" - PROMPT 47 3 "" - PICTURE "###.###.###^^^" + PROMPT 49 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 18 BEGIN KEY "CONTRIBUTO VERSATO" - PROMPT 66 3 "" - PICTURE "###.###.###^^^" + PROMPT 68 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 19 BEGIN KEY "INTERESSI" - PROMPT 84 3 "" - PICTURE "###.###.###^^^" + PROMPT 86 3 "" + PICTURE "###.###.###.###^^^" END NUMERO 20 BEGIN KEY "SOPRATTASSA SU IRPEF" PROMPT 102 3 "" - PICTURE "###.###.###^^^" + PICTURE "###.###.###.###^^^" END END diff --git a/m770/77qa2.frm b/m770/77qa2.frm index 5c16b5928..de41c830f 100755 --- a/m770/77qa2.frm +++ b/m770/77qa2.frm @@ -1,466 +1,447 @@ -USE 57 -JOIN 45 INTO CODDITTA=CODDITTA CODDIP=CODDIP -JOIN %CAF ALIAS 104 INTO CODTAB=CODCAAF -JOIN 9 INTO CODDITTA=CODDITTA -JOIN 6 TO 9 ALIAS 106 INTO TIPOA=TIPOA CODANAGR=CODANAGR -JOIN 8 TO 106@ ALIAS 108 INTO CODANAGR=CODANAGR -JOIN 13 TO 108@ ALIAS 113 INTO COM==COMNASC -JOIN 13 TO 106@ ALIAS 213 INTO COM==COMRF(COMRES) - -END -DESCRIPTION -BEGIN - 57->* "Quadro A2 770" - 45->* "Anagrafica dei dipendenti" - 104@->* "Tabella CAAF" - 9->* "Ditte" - 106@->* "Anagrafica persone fisiche e giuridiche (ditta)" - 108@->* "Anagrafica persone fisiche (ditta)" - 113@->* "Comuni DITTA (nascita)" - 213@->* "Comuni DITTA (residenza)" -END - -GENERAL -BEGIN - OFFSET 0 0 - FONT "Courier New" - SIZE 11 - CARATTERE "X" - INIZIO_POS 3 2 - FINE_POS 131 - GRID "+++++++++-|" -END - -SECTION HEADER FIRST 28 - -LISTA 1 -BEGIN - KEY "Tipo anagrafica" - FLAGS "H" - FIELD 106@->TIPOA - ITEM "F|Fisica" MESSAGE SHOW,1@|HIDE,2@ - ITEM "G|Giuridica" MESSAGE SHOW,2@|HIDE,1@ -END - -STRINGA 2 -BEGIN - KEY "CODICE FISCALE" - PROMPT 3 13 "" - FIELD 106@->COFI -END - -STRINGA 3 -BEGIN - KEY "RAGIONE SOCIALE" - PROMPT 40 13 "" - GROUP 2 - FIELD 106@->RAGSOC -END - -STRINGA 4 -BEGIN - KEY "COGNOME" - PROMPT 40 13 "" - GROUP 1 - FIELD 106@->RAGSOC[1,30] -END - -STRINGA 5 -BEGIN - KEY "NOME" - PROMPT 17 15 "" - GROUP 1 - FIELD 106@->RAGSOC[31,50] -END - -STRINGA 6 -BEGIN - KEY "SESSO" - PROMPT 59 15 "" - GROUP 1 - FIELD 108@->SESSO -END - -STRINGA 7 -BEGIN - KEY "DATA DI NASCITA" - PROMPT 64 15 "" - GROUP 1 - FIELD 108@->DATANASC -END - -STRINGA 8 -BEGIN - KEY "COMUNE DI NASCITA" - PROMPT 86 15 "" - GROUP 1 - FIELD 113@->DENCOM -END - -STRINGA 9 -BEGIN - KEY "PROV. DI NASCITA" - PROMPT 128 15 "" - GROUP 1 - FIELD 113@->PROVCOM -END - -STRINGA 10 -BEGIN - KEY "COMUNE DI RES.FISCALE" - PROMPT 17 17 "" - FIELD 213@->DENCOM -END - -STRINGA 11 -BEGIN - KEY "PROV DI RES.FISCALE" - PROMPT 59 17 "" - FIELD 213@->PROVCOM -END - -STRINGA 12 -BEGIN - KEY "VIA di RES." - PROMPT 68 17 "" - FIELD 106@->INDRF -END - -STRINGA 15 -BEGIN - KEY "NUM. CIVICO di RES." - PROMPT 104 17 "" - FIELD 106@->CIVRF -END - -STRINGA 16 -BEGIN - KEY "CAP" - PROMPT 125 17 "" - FIELD 106@->CAPRF -END - -STRINGA 13 -BEGIN - KEY "CODICE FISCALE DEL SOGGETTO DICHIARANTE" - PROMPT 87 20 "" -END - -NUMERO 14 -BEGIN - KEY "NUM. FOGLIO" - PROMPT 125 24 "" -END - -END - -SECTION BODY ODD 10 - -STRINGA 1 -BEGIN - KEY "COD.FIS" - PROMPT 11 1 "" - FIELD 45->CODFI -END - -STRINGA 2 -BEGIN - KEY "COGNOME" - PROMPT 43 1 "" - FIELD 45->COGNOME -END - -STRINGA 3 -BEGIN - KEY "NOME" - PROMPT 80 1 "" - FIELD 45->NOME -END - -DATA 4 -BEGIN - KEY "DATA NASCITA" - PROMPT 114 1 "" - FIELD 45->DATANA - FORMAT "1444-" -END - -STRINGA 5 -BEGIN - KEY "SESSO" - PROMPT 128 1 "" - FIELD 45->SESSO -END - -STRINGA 6 -BEGIN - KEY "COMUNE DI NASCITA" - PROMPT 11 3 "" - FIELD 45->COMUNENA -END - -STRINGA 7 -BEGIN - KEY "PROV. DI NASCITA" - PROMPT 51 3 "" - FIELD 45->PROVNA -END - -NUMERO 8 -BEGIN - KEY "CONGUAGLI NON EFFETTUATI" - PROMPT 11 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->8 - FIELD 57->CONEFF -END - -NUMERO 9 -BEGIN - KEY "RETTIFICA CONGUAGLIO" - PROMPT 26 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->9 - FIELD 57->RETCON -END - -NUMERO 10 -BEGIN - KEY "IMPOSTA RIMBORSATA" - PROMPT 41 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->10 - FIELD 57->SIRPEFRIMB -END - -NUMERO 11 -BEGIN - KEY "IMPOSTA VERSATA" - PROMPT 55 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->11 - FIELD 57->VIRPEF -END - -NUMERO 12 -BEGIN - KEY "INTERESSI" - PROMPT 70 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->12 - FIELD 57->INTIRPEF -END - -NUMERO 13 -BEGIN - KEY "IMPOSTA VERSATA" - PROMPT 85 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->13 - FIELD 57->AIRPEFIV -END - -NUMERO 14 -BEGIN - KEY "INTERESSI" - PROMPT 100 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->14 - FIELD 57->AIRPEFINT -END - -NUMERO 15 -BEGIN - KEY "SOPRATTASSA SU IRPEF" - PROMPT 115 5 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->15 - FIELD 57->STASSA15 -END - -NUMERO 16 -BEGIN - KEY "CONTRIBUTO A RIMBORSO" - PROMPT 11 7 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->16 - FIELD 57->CONTR16 -END - -NUMERO 17 -BEGIN - KEY "CONTRIBUTO VERSATO" - PROMPT 26 7 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->17 - FIELD 57->CONTRVER -END - -NUMERO 18 -BEGIN - KEY "INTERESSI" - PROMPT 41 7 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->18 - FIELD 57->INTER18 -END - -NUMERO 19 -BEGIN - KEY "CONTRIBUTO VERSATO" - PROMPT 55 7 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->19 - FIELD 57->CONTV19 -END - -NUMERO 20 -BEGIN - KEY "INTERESSI" - PROMPT 70 7 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->20 - FIELD 57->INTE20 -END - -NUMERO 21 -BEGIN - KEY "SOPRATTASSA SU CSSN" - PROMPT 85 7 "" - PICTURE "###.###.###^^^" - MESSAGE ADD,FL->21 - FIELD 57->SOPRAT21 -END - -NUMERO 22 -BEGIN - KEY "MOD. 730/95 NON LIQUIDABILE" - PROMPT 100 7 "" - PICTURE "###.###.###^^^" - FIELD 57->M730NLIQ -END - -STRINGA 23 -BEGIN - KEY "CODICE FISCALE CAAF" - PROMPT 11 9 "" - FIELD 104@->S1 -END - -STRINGA 24 -BEGIN - KEY "DENOMINAZIONE CAAF" - PROMPT 44 9 "" - FIELD 104@->S0 -END - -NUMERO 25 -BEGIN - KEY "NUMERO ISCRIZIONE ALBO" - PROMPT 115 9 "" - FIELD 104@->I1 -END - -END - -SECTION FOOTER LAST 4 - -NUMERO 8 -BEGIN - KEY "CONGUAGLI NON EFFETTUATI" - PROMPT 11 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 9 -BEGIN - KEY "RETTIFICA CONGUAGLIO" - PROMPT 26 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 10 -BEGIN - KEY "IMPOSTA RIMBORSATA" - PROMPT 41 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 11 -BEGIN - KEY "IMPOSTA VERSATA" - PROMPT 55 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 12 -BEGIN - KEY "INTERESSI" - PROMPT 70 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 13 -BEGIN - KEY "IMPOSTA VERSATA" - PROMPT 85 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 14 -BEGIN - KEY "INTERESSI" - PROMPT 100 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 15 -BEGIN - KEY "SOPRATTASSA SU IRPEF" - PROMPT 115 1 "" - PICTURE "###.###.###^^^" -END - -NUMERO 16 -BEGIN - KEY "CONTRIBUTO A RIMBORSO" - PROMPT 11 3 "" - PICTURE "###.###.###^^^" -END - -NUMERO 17 -BEGIN - KEY "CONTRIBUTO VERSATO" - PROMPT 26 3 "" - PICTURE "###.###.###^^^" -END - -NUMERO 18 -BEGIN - KEY "INTERESSI" - PROMPT 41 3 "" - PICTURE "###.###.###^^^" -END - -NUMERO 19 -BEGIN - KEY "CONTRIBUTO VERSATO" - PROMPT 55 3 "" - PICTURE "###.###.###^^^" -END - -NUMERO 20 -BEGIN - KEY "INTERESSI" - PROMPT 70 3 "" - PICTURE "###.###.###^^^" -END - -NUMERO 21 -BEGIN - KEY "SOPRATTASSA SU CSSN" - PROMPT 85 3 "" - PICTURE "###.###.###^^^" -END - -END +USE 57 +JOIN 45 INTO CODDITTA=CODDITTA CODDIP=CODDIP +JOIN %CAF ALIAS 104 INTO CODTAB=CODCAAF +JOIN 9 INTO CODDITTA=CODDITTA +JOIN 6 TO 9 ALIAS 106 INTO TIPOA=TIPOA CODANAGR=CODANAGR +JOIN 8 TO 106@ ALIAS 108 INTO CODANAGR=CODANAGR +JOIN 13 TO 108@ ALIAS 113 INTO COM==COMNASC +JOIN 13 TO 106@ ALIAS 213 INTO COM==COMRF(COMRES) + +END +DESCRIPTION +BEGIN + 57->* "Quadro A2 770" + 45->* "Anagrafica dei dipendenti" + 104@->* "Tabella CAAF" + 9->* "Ditte" + 106@->* "Anagrafica persone fisiche e giuridiche (ditta)" + 108@->* "Anagrafica persone fisiche (ditta)" + 113@->* "Comuni DITTA (nascita)" + 213@->* "Comuni DITTA (residenza)" +END + +GENERAL +BEGIN + OFFSET 0 0 + FONT "Courier New" + SIZE 11 + CARATTERE "X" + INIZIO_POS 3 2 + FINE_POS 131 + GRID "+++++++++-|" +END + +SECTION HEADER FIRST 28 + +LISTA 1 +BEGIN + KEY "Tipo anagrafica" + FLAGS "H" + FIELD 106@->TIPOA + ITEM "F|Fisica" MESSAGE SHOW,1@|HIDE,2@ + ITEM "G|Giuridica" MESSAGE SHOW,2@|HIDE,1@ +END + +STRINGA 2 +BEGIN + KEY "CODICE FISCALE" + PROMPT 3 13 "" + FIELD 106@->COFI +END + +STRINGA 3 +BEGIN + KEY "RAGIONE SOCIALE" + PROMPT 40 13 "" + GROUP 2 + FIELD 106@->RAGSOC +END + +STRINGA 4 +BEGIN + KEY "COGNOME" + PROMPT 40 13 "" + GROUP 1 + FIELD 106@->RAGSOC[1,30] +END + +STRINGA 5 +BEGIN + KEY "NOME" + PROMPT 17 15 "" + GROUP 1 + FIELD 106@->RAGSOC[31,50] +END + +STRINGA 6 +BEGIN + KEY "SESSO" + PROMPT 59 15 "" + GROUP 1 + FIELD 108@->SESSO +END + +STRINGA 7 +BEGIN + KEY "DATA DI NASCITA" + PROMPT 67 15 "" + GROUP 1 + FIELD 108@->DATANASC +END + +STRINGA 8 +BEGIN + KEY "COMUNE DI NASCITA" + PROMPT 84 15 "" + GROUP 1 + FIELD 113@->DENCOM +END + +STRINGA 9 +BEGIN + KEY "PROV. DI NASCITA" + PROMPT 125 15 "" + GROUP 1 + FIELD 113@->PROVCOM +END + +STRINGA 10 +BEGIN + KEY "COMUNE DI RES.FISCALE" + PROMPT 17 17 "" + FIELD 213@->DENCOM +END + +STRINGA 11 +BEGIN + KEY "PROV DI RES.FISCALE" + PROMPT 59 17 "" + FIELD 213@->PROVCOM +END + +STRINGA 12 +BEGIN + KEY "VIA di RES." + PROMPT 66 17 "" + FIELD 106@->INDRF +END + +STRINGA 15 +BEGIN + KEY "NUM. CIVICO di RES." + PROMPT 104 17 "" + FIELD 106@->CIVRF +END + +STRINGA 16 +BEGIN + KEY "CAP" + PROMPT 123 17 "" + FIELD 106@->CAPRF +END + +STRINGA 13 +BEGIN + KEY "CODICE FISCALE DEL SOGGETTO DICHIARANTE" + PROMPT 87 20 "" +END + +NUMERO 14 +BEGIN + KEY "NUM. FOGLIO" + PROMPT 125 23 "" +END + +END + +SECTION BODY ODD 10 + +STRINGA 1 +BEGIN + KEY "COD.FIS" + PROMPT 11 1 "" + FIELD 45->CODFI +END + +STRINGA 2 +BEGIN + KEY "COGNOME" + PROMPT 43 1 "" + FIELD 45->COGNOME +END + +STRINGA 3 +BEGIN + KEY "NOME" + PROMPT 80 1 "" + FIELD 45->NOME +END + +DATA 4 +BEGIN + KEY "DATA NASCITA" + PROMPT 114 1 "" + FIELD 45->DATANA + FORMAT "1444-" +END + +STRINGA 5 +BEGIN + KEY "SESSO" + PROMPT 128 1 "" + FIELD 45->SESSO +END + +STRINGA 6 +BEGIN + KEY "COMUNE DI NASCITA" + PROMPT 11 3 "" + FIELD 45->COMUNENA +END + +STRINGA 7 +BEGIN + KEY "PROV. DI NASCITA" + PROMPT 51 3 "" + FIELD 45->PROVNA +END + +STRINGA 8 +BEGIN + KEY "CONGUAGLI NON EFFETTUATI" + PROMPT 16 5 "" + FIELD 57->CONEFF +END + +STRINGA 9 +BEGIN + KEY "RETTIFICA CONGUAGLIO" + PROMPT 31 5 "" + FIELD 57->RETCON +END + +NUMERO 10 +BEGIN + KEY "IMPOSTA RIMBORSATA" + PROMPT 39 5 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->10 + FIELD 57->SIRPEFRIMB +END + +NUMERO 11 +BEGIN + KEY "IMPOSTA VERSATA" + PROMPT 54 5 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->11 + FIELD 57->VIRPEF +END + +NUMERO 12 +BEGIN + KEY "INTERESSI" + PROMPT 70 5 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->12 + FIELD 57->INTIRPEF +END + +NUMERO 13 +BEGIN + KEY "IMPOSTA VERSATA" + PROMPT 85 5 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->13 + FIELD 57->AIRPEFIV +END + +NUMERO 14 +BEGIN + KEY "INTERESSI" + PROMPT 100 5 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->14 + FIELD 57->AIRPEFINT +END + +NUMERO 15 +BEGIN + KEY "SOPRATTASSA SU IRPEF" + PROMPT 115 5 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->15 + FIELD 57->STASSA15 +END + +NUMERO 16 +BEGIN + KEY "CONTRIBUTO A RIMBORSO" + PROMPT 8 7 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->16 + FIELD 57->CONTR16 +END + +NUMERO 17 +BEGIN + KEY "CONTRIBUTO VERSATO" + PROMPT 23 7 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->17 + FIELD 57->CONTRVER +END + +NUMERO 18 +BEGIN + KEY "INTERESSI" + PROMPT 39 7 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->18 + FIELD 57->INTER18 +END + +NUMERO 19 +BEGIN + KEY "CONTRIBUTO VERSATO" + PROMPT 54 7 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->19 + FIELD 57->CONTV19 +END + +NUMERO 20 +BEGIN + KEY "INTERESSI" + PROMPT 70 7 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->20 + FIELD 57->INTE20 +END + +NUMERO 21 +BEGIN + KEY "SOPRATTASSA SU CSSN" + PROMPT 85 7 "" + PICTURE "###.###.###.###^^^" + MESSAGE ADD,FL->21 + FIELD 57->SOPRAT21 +END + +NUMERO 22 +BEGIN + KEY "MOD. 730/95 NON LIQUIDABILE" + PROMPT 108 7 "" + FIELD 57->M730NLIQ +END + +STRINGA 23 +BEGIN + KEY "CODICE FISCALE CAAF" + PROMPT 11 9 "" + FIELD 104@->S1 +END + +STRINGA 24 +BEGIN + KEY "DENOMINAZIONE CAAF" + PROMPT 44 9 "" + FIELD 104@->S0 +END + +NUMERO 25 +BEGIN + KEY "NUMERO ISCRIZIONE ALBO" + PROMPT 119 9 "" + FIELD 104@->I1 +END + +END + +SECTION FOOTER LAST 4 + +NUMERO 10 +BEGIN + KEY "IMPOSTA RIMBORSATA" + PROMPT 39 1 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 11 +BEGIN + KEY "IMPOSTA VERSATA" + PROMPT 54 1 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 12 +BEGIN + KEY "INTERESSI" + PROMPT 70 1 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 13 +BEGIN + KEY "IMPOSTA VERSATA" + PROMPT 85 1 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 14 +BEGIN + KEY "INTERESSI" + PROMPT 100 1 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 15 +BEGIN + KEY "SOPRATTASSA SU IRPEF" + PROMPT 115 1 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 16 +BEGIN + KEY "CONTRIBUTO A RIMBORSO" + PROMPT 8 3 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 17 +BEGIN + KEY "CONTRIBUTO VERSATO" + PROMPT 23 3 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 18 +BEGIN + KEY "INTERESSI" + PROMPT 39 3 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 19 +BEGIN + KEY "CONTRIBUTO VERSATO" + PROMPT 54 3 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 20 +BEGIN + KEY "INTERESSI" + PROMPT 70 3 "" + PICTURE "###.###.###.###^^^" +END + +NUMERO 21 +BEGIN + KEY "SOPRATTASSA SU CSSN" + PROMPT 85 3 "" + PICTURE "###.###.###.###^^^" +END + +END diff --git a/m770/77stq.cpp b/m770/77stq.cpp index edbc87143..6e247c8be 100755 --- a/m770/77stq.cpp +++ b/m770/77stq.cpp @@ -128,7 +128,7 @@ class TDicForm : public TForm public: - const long filtra(const long codditta); + virtual long filtra(const long codditta); TProgind* _prog; // progind usata in print() @@ -161,6 +161,8 @@ class TDicForm : public TForm virtual void set_cursor(TCursor* cur); virtual void close_print(); virtual bool print(const long codditta, const long NumFis, const long NumNoFis); + + const TString& quadro() const { return _quadro; } TDicForm(const char* form, const char* quadro); virtual ~TDicForm() {} @@ -186,7 +188,7 @@ TDicForm::TDicForm(const char* form, const char* quadro) ClearFlagModulaser(); } -const long TDicForm::filtra(const long codditta) +long TDicForm::filtra(const long codditta) { TString filtr(24); filtr.format("CODDITTA=%ld", codditta); @@ -3292,6 +3294,145 @@ void TQuadroH::azzera_contatori() // Quadro 770/A /////////////////////////////////////////////////////////// +class TDipendente : public TSortable +{ + TRecnotype _pos; + + long _codice_ditta; + TString _ragsoc; + long _codice_dipendente; + long _codice_deceduto; + TDate _fine_rapporto; + bool _lavoro_precedente; + char _causa; + char _rettifica_conguaglio; + int _numero_progressivo; + +public: + virtual int compare(const TSortable& s) const; + + TRecnotype pos() const { return _pos; } + long codice_deceduto() const { return _codice_deceduto; } + void reset_deceduto() { _codice_deceduto = -_codice_deceduto; } + long codice() const { return _codice_dipendente; } + + TDipendente(const TCursor& cur); + virtual ~TDipendente() { } +}; + +TDipendente::TDipendente(const TCursor& cur) +{ + _pos = ((TCursor&)cur).pos(); + + const TRectype& rec = cur.curr(); + const TRectype& dip = cur.curr(LF_DIPEND); + + _codice_ditta = rec.get_long("CODDITTA"); + _ragsoc = dip.get("COGNOME"); _ragsoc << ' ' << dip.get("NOME"); + _codice_deceduto = dip.get_long("CODDIPDEC"); + _codice_dipendente = rec.get_long("CODDIP"); + _fine_rapporto = rec.get("DATAFR"); + _lavoro_precedente = rec.get("CFDLPREC").not_empty(); + _causa = rec.get_char("CAUSA"); + _rettifica_conguaglio = rec.get_char("RETCON"); + _numero_progressivo = rec.get_int("NPROG"); + + if (_rettifica_conguaglio == 'B' || !_fine_rapporto.ok()) + _fine_rapporto = eotime; + else + if (_fine_rapporto.year() != 1995) + _pos = -1; // Non stampare anni diversi dal 1995 +} + + +int TDipendente::compare(const TSortable& s) const +{ + const TDipendente& rec = (const TDipendente&)s; + + if (_codice_ditta != rec._codice_ditta) + return _codice_ditta > rec._codice_ditta ? +1 : -1; + + const int diff = _ragsoc.compare(rec._ragsoc, -1, TRUE); + if (diff != 0) + return diff; + + if (_codice_dipendente != rec._codice_dipendente) + return _codice_dipendente > rec._codice_dipendente ? +1 : -1; + + if (_fine_rapporto != rec._fine_rapporto) + return _fine_rapporto > rec._fine_rapporto ? +1 : -1; + + if (_lavoro_precedente != rec._lavoro_precedente) + return _lavoro_precedente ? +1 : -1; + + if (_causa != rec._causa) + return _causa > rec._causa ? +1 : -1; + + if (_rettifica_conguaglio != rec._rettifica_conguaglio) + return _rettifica_conguaglio > rec._rettifica_conguaglio ? +1 : -1; + + return _numero_progressivo - rec._numero_progressivo; +} + +class TDipendenti : public TObject +{ + TArray _data; + +protected: + const TDipendente& dip(int i) const { return (const TDipendente&)_data[i]; } + +public: + const TDipendente& operator[](int i) const { return dip(i); } + + int fill(TCursor& cur); + int items() const { return _data.items(); } + + int find(long d) const; + + TDipendenti() { } + virtual ~TDipendenti() { } +}; + +int TDipendenti::find(long cod) const +{ + for (int i = _data.last(); i >= 0; i--) + if (dip(i).codice() == cod) + break; + return i; +} + +int TDipendenti::fill(TCursor& cur) +{ + for (cur = 0; cur.ok(); ++cur) + { + TDipendente* n = new TDipendente(cur); + if (n->pos() >= 0) + _data.add(n); + else + delete n; + } + const int i = _data.items(); + if (i > 0) + { + _data.sort(); + for (int d = i-1; d >= 0; d--) + { + const long coddec = dip(d).codice_deceduto(); + if (coddec > 0) // E' un erede! + { + const int posdec = find(coddec); + if (posdec >= 0 && posdec != d-1) // Il deceduto esiste + { + TDipendente* dipen = (TDipendente*)_data.remove(d, TRUE); + dipen->reset_deceduto(); // Non e' piu' un erede + _data.insert(dipen, posdec+1); // Attaccalo dietro al deceduto + } + } + } + } + return i; +} + class TQuadroA : public TDicForm { enum { QA_FORMLEN = 72 }; @@ -3358,7 +3499,7 @@ void TQuadroA::next_page(TPrinter& pr) int TQuadroA::elementi_pagina(PaginaQuadro p) const { - const int n[4] = { 1, 4, 4, 2 }; + const int n[4] = { 1, 3, 3, 2 }; return n[p - PRIMA]; } @@ -3387,10 +3528,35 @@ bool TQuadroA::print(const long codditta, const long NumFis, const long NumNoFis bool stampato_ultimo = FALSE; bool stampati_totali = FALSE; - for (cur = 0; stampati_totali == FALSE; stampato_ultimo ? 0 : ++cur) + int pos = 0; + TDipendenti indice; + if (quadro() == "A") + { + const int i = indice.fill(cur); + if (i > 0) + { + if (usa_progind()) + progind()->addstatus(cur.items()-i); // Segna come elaborati tutti gli ignorati + + cur = indice[0].pos(); + } + else + return FALSE; + } + else + cur = 0; + + while (!stampati_totali) { - const bool stampero_ultimo = stampato_ultimo == FALSE && cur.pos() == cur.items()-1; - + bool stampero_ultimo = stampato_ultimo == FALSE; + if (stampero_ultimo) + { + if (quadro() == "A") + stampero_ultimo &= pos == indice.items()-1; + else + stampero_ultimo &= cur.pos() == cur.items()-1; + } + switch(_PaginaCorrente) { case PRIMA: @@ -3460,7 +3626,17 @@ bool TQuadroA::print(const long codditta, const long NumFis, const long NumNoFis CHECK(0, "Invalid Quadro A page"); break; } + + if (!stampato_ultimo) + { + if (quadro() == "A") + cur = indice[++pos].pos(); + else + ++cur; + } } + + close_print(); return TRUE; } @@ -3512,6 +3688,7 @@ class TQuadroA1 : public TQuadroA protected: virtual int elementi_pagina(PaginaQuadro p) const; virtual int prima_riga(PaginaQuadro p) const; + virtual long filtra(const long codditta); public: TQuadroA1(const char* form, const char* quadro) : TQuadroA(form, quadro) { } @@ -3529,6 +3706,17 @@ int TQuadroA1::prima_riga(PaginaQuadro p) const return p == PRIMA ? 32 : 4; } +long TQuadroA1::filtra(const long codditta) +{ + TString filtr(32); + filtr.format("CODDITTA=%ld|ANNORIF=1995", codditta); + + cursor()->setfilter(filtr, TRUE); + const long items = cursor()->items(); + + return items; +} + class TStampaQuadroA1 : public TStampaQuadroA { protected: @@ -3544,7 +3732,7 @@ bool TStampaQuadroA1::user_create() _form = new TQuadroA1("77QA1", quadro()); TString sortkey(80); - sortkey.format("CODDITTA|%d->COGNOME|%d->NOME|CODDIP", LF_DIPEND, LF_DIPEND); + sortkey.format("CODDITTA|%d->COGNOME|%d->NOME|CODDIP|MESERIF|NPROG", LF_DIPEND, LF_DIPEND); _cur = new TSorted_cursor(_form->TForm::relation(), sortkey); return TRUE; @@ -3554,8 +3742,27 @@ bool TStampaQuadroA1::user_create() // Quadro A2 ///////////////////////////////////////////////////////////////////////////////// -// Il form del quadro A2 e' sostanzialmente uguale a quello del quadro A1: -// per cui non necessita di una classe a parte +class TQuadroA2 : public TQuadroA +{ +protected: + virtual int elementi_pagina(PaginaQuadro p) const; + virtual int prima_riga(PaginaQuadro p) const; + +public: + TQuadroA2(const char* form, const char* quadro) : TQuadroA(form, quadro) { } + virtual ~TQuadroA2() { } +}; + +int TQuadroA2::elementi_pagina(PaginaQuadro p) const +{ + const int n[4] = { 3, 6, 6, 5 }; + return n[p-PRIMA]; +} + +int TQuadroA2::prima_riga(PaginaQuadro p) const +{ + return p == PRIMA ? 32 : 4; +} class TStampaQuadroA2 : public TStampaQuadroA { @@ -3569,10 +3776,10 @@ public: bool TStampaQuadroA2::user_create() { - _form = new TQuadroA1("77QA2", quadro()); + _form = new TQuadroA2("77QA2", quadro()); TString sortkey(80); - sortkey.format("CODDITTA|%d->COGNOME|%d->NOME|CODDIP", LF_DIPEND, LF_DIPEND); + sortkey.format("CODDITTA|%d->COGNOME|%d->NOME|CODDIP|RETCON|NPROG", LF_DIPEND, LF_DIPEND); _cur = new TSorted_cursor(_form->TForm::relation(), sortkey); return TRUE; @@ -3619,7 +3826,7 @@ bool TStampaQuadroA3::user_create() _form = new TQuadroA3("77QA3", quadro()); TString sortkey(80); - sortkey.format("CODDITTA|%d->COGNOME|%d->NOME|CODDIP", LF_DIPEND, LF_DIPEND); + sortkey.format("CODDITTA|NPROG|%d->COGNOME|%d->NOME|CODDIP", LF_DIPEND, LF_DIPEND); _cur = new TSorted_cursor(_form->TForm::relation(), sortkey); return TRUE;