Files correlati : Ricompilazione Demo : [ ] Commento : Riportata la versione 1.5 fino alla patch 811 git-svn-id: svn://10.65.10.50/trunk@8985 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			829 lines
		
	
	
		
			38 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			829 lines
		
	
	
		
			38 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| IVA.TXT
 | |
| =======
 | |
| 
 | |
| 
 | |
| AZIONE       DATA                  CHI         COMMENTO
 | |
| =======================================================================================================
 | |
| creato       1996/07/19            angelo      descrizione dei file usati nei programmi di liquidazione
 | |
| aggiornato   1996/10/22            angelo      descrizione generica del funzionamento del programma di liquidazione
 | |
| aggiornato   1996/11/13            angelo      modifiche per trasferimento ad IVA 11'96
 | |
| aggiornato   1996/11/20            angelo      modifiche per aggiungere codice A36 in stampa riepilogo progressivi
 | |
| aggiornato   1996/12/01            angelo      modifiche per trasferimento IVA11. Corretto il trasferimento di piu' attivita'
 | |
| aggiornato   1997/10/20            angelo      modifiche per implementazione progressivi (PIM) sulla 13a liquidazione
 | |
| aggiornato   1997/10/31            angelo      modifiche per nuovo prospetto agricolo
 | |
| aggiornato   1997/12/01            angelo      modifiche per IVA11'97
 | |
| aggiornato   1997/12/05            angelo      modifiche per PRORATA dal 1998
 | |
| aggiornato   1999/02/10            angelo      modifiche per Sospensione IVA, PLAFOND & PRORATA dal 1998
 | |
| 
 | |
| 
 | |
| PROPOSITO
 | |
| =========
 | |
| 
 | |
| Il seguente file non e' niente di ufficiale e pertanto da ritenersi valido cosi com'e'.
 | |
| La documentazione che segue sono varie note sul funzionamento dei programmi IVA, descrizione
 | |
| delle tabelle utilizzate ecc. di modo che' chicchessia possa subentrare senza troppi
 | |
| problemi in questo sconfinato mondo di imposte sul valore aggiunto.
 | |
| Sarebbe cosa buona e giusta che eventuali importanti modifiche ai programmi siano qui
 | |
| dettagliatamente spiegate, onde evitare avere sempre un documento a portata di mano che
 | |
| tutti possano consultare, senza dover scorrere disperatamente 10000 linee di C++
 | |
| 
 | |
| 
 | |
| 19 Luglio 1996
 | |
| 
 | |
| TABELLE PROGRESSIVI
 | |
| -------------------
 | |
| 
 | |
| Ecco qui, tanto per cominciare un elenco riassuntivo delle tabelle utilizzate dai programmi
 | |
| di calcolo liquidazione, visualizzazione e stampe varie.
 | |
| 
 | |
| %DEL: tabella comune per memorizzare i versamenti effettuati (deleghe IVA)
 | |
|   CODTAB  = CODDITTA(Z)[0-4]+ANNO[5-8]+MESE(Z)[9-10]+TIPO[11,11]
 | |
|   S6      = Codice tributo
 | |
|   S7      = Codice ABI banca
 | |
|   S8      = Codice CAB banca
 | |
|   S9      = Codice concessione
 | |
|   D0      = Data delega
 | |
|   R0      = Importo versamento (esclusi interessi)
 | |
|   R1      = Interessi da pagare
 | |
|   R2      = Importo del versamento inclusi interessi
 | |
|   B0      = Stampato
 | |
| 
 | |
|   Nota: l'ultimo carattere di CODTAB (TIPO) si riferisce al tipo di versamento:
 | |
|                1 = normale
 | |
|                2 = annuale
 | |
|                3 = art.74
 | |
|                4 = cessazione attivita'
 | |
|                5 = integrativa
 | |
|                7 = acconti IVA
 | |
|                Il campo R2 in realta' non e' la somma di R0 + R1, poiche' R0 = ROUND(R2 - R1).
 | |
|                Pertanto e' utile tenere l'importo lordo non arrotondato in un campo separato
 | |
|                visto che in alcuni casi la liquidazione richiede di stampare proprio questo valore.
 | |
| 
 | |
| %LIA: tabella comune per memorizzare i risultati della Liquidazione IVA Annuale
 | |
|   CODTAB  = DITTA[0-4](Z)+ANNO[5-8]
 | |
|   S1      = Credito precedente  e acquisti intracomunitari separati da !
 | |
|   S7      = Frequenza versamenti per anno liquidazione (M,T)
 | |
|   S8      = Tipo acconto ("S"aldo oppure "A"cconto)
 | |
|   R0      = Credito anno precedente
 | |
|   R1      = Volume di affari lordo
 | |
|   R2      = Volume di affari attivita' 1
 | |
|   R3      = Volume di affari attivita' 2
 | |
|   R4      = Acconto dicembre
 | |
|   R5      = Credito di costo agenzie di viaggio
 | |
|   R6      = Credito utilizzato
 | |
|   R7      = Iva sulle vendite annotate fino al 20/12
 | |
|   R8      = Iva sugli acquisti annotati fino al 20/12
 | |
|   R9      = Rettifica
 | |
|   R10     = Iva chiesta a rimborso
 | |
|   R11     = Ulteriori detrazioni
 | |
|   R12     = Pro-rata indetraibile
 | |
|   R13     = Iva su operaz. fino al 20 dic., ma non fatturate
 | |
|   R14     = Iva su operaz. fino al 20 dic., ma non annotate
 | |
|   B1      = Liquidazione differita
 | |
|   B2      = Regime agricoltore minimo
 | |
| 
 | |
| LAM: tabella di ditta per memorizzare i risultati Liquidazione Attivita' Mensile
 | |
|   CODTAB  = ANNO[0-3]+MESE(Z)[4-5] 
 | |
|   R0      = Totale IVA vendite in regime IVA su tutte le attivita'
 | |
|   R1      = Totale IVA acquisti in regime IVA su tutte le attivita'
 | |
|   R2      = Credito precedente o inizio anno
 | |
|   R3      = Debito precedente da liquidazione a debito < 50.000
 | |
| 
 | |
| LIM: tabella di ditta per memorizzare i risultati della Liquidazione Iva Mensile
 | |
|   CODTAB  = ANNO[0-3]+MESE(Z)[4-5] 
 | |
|   S0      = Descrizione rettifica (1) 
 | |
|   S1      = Descrizione rettifica (2)
 | |
|   S4      = Codice ABI presso cui e' effettuato il versamento
 | |
|   S5      = Codice CAB presso cui e' effettuato il versamento
 | |
|   S6      = Codice concessione a cui e' intestato il versamento
 | |
|   S7      = D = rettifica a debito; C = rettifica a credito 
 | |
|   R0      = Risultato mese ( < 0 = credito): comprende tutto
 | |
|   R1      = Rimborso richiesto (immesso da visualizzazione)
 | |
|   R2      = Credito di costo agenzie di viaggio
 | |
|   R3      = Debito mensile agenzie di viaggio
 | |
|   R4      = Percentuale di ripartizione agenzie di viaggio
 | |
|   R5      = Importo rettifica ( < 0 = a credito)
 | |
|   R6      = Totale ulteriori detrazioni
 | |
|   R7      = Totale conguaglio prorata (solo in annuale)
 | |
|   R8      = Totale versamenti effettuati 
 | |
|   R9      = Totale versamenti integrativi effettuati 
 | |
|   R10     = Tasso di interesse applicato 
 | |
|   R11     = Acconto versato a dicembre (solo per dicembre!)
 | |
|   R12     = Risultato totale a credito (segno +) 
 | |
|   R13     = Risultato totale a debito 
 | |
|   R14     = Interesse versato
 | |
|   D0      = Data versamento
 | |
|   B0      = Mese calcolato (invalidato da primanota) 
 | |
|   B1      = Stampato su registro bollato 
 | |
|   B2      = Diritto al rimborso infraannuale per il mese 
 | |
| 
 | |
| PIM: Tabella di ditta per memorizzare i progressivi IVA
 | |
|   CODTAB  = ANNO[0-3]+ATT(Z)[4-8]+TIPATT[9,9]+REG[10,12]+MESE(Z)[13,14]+
 | |
|             TIPOCR[15,15]+CODIVA[16,19]+TIPODET[20,20]
 | |
|   S0      = Imponibile/IVA importi relativi art40 c.5/6/8 a.i.(separati da "!")
 | |
|   S1      = Imponibile/IVA fatture in ritardo (separati da "!")
 | |
|   S2      = Imponibile/IVA corrispettivi registrati al netto dell'IVA (separati da "!")
 | |
|   S4      = Codice IVA a cui ventilare (corrispettivi)
 | |
|   S5      = Tipo IVA (da tabella IVA)
 | |
|   I0      = Tipo importi (1 = netto, 2 = lordo)
 | |
|   I1      = Tipo movimento (1 = vendita, 2 = acquisto)
 | |
|   R0      = Imponibile totale
 | |
|   R1      = IVA totale
 | |
|   R2      = Lordo corrispettivi
 | |
|   R5      = Imponibile fatture con scontrino (<= R0)
 | |
|   R6      = IVA fatture con scontrino (<= R1)
 | |
|   R7      = Imponibile autofatture non resid. art. 17 (<= R0)
 | |
|   R8      = IVA autofatture non resid. art. 17 (<= R1)
 | |
|   R9      = Imponibile bolle doganali relative (compreso in R0)
 | |
|   R10     = IVA bolle doganali relative (compreso in R1)
 | |
|   R11     = Totale imponibile fatture sospensione imposta (indipendente da R0)
 | |
|   R12     = Totale IVA fatture sospensione imposta (indipendente da R1)
 | |
|   R13     = Totale imponibili falsi corrispettivi (reg corr ma doc come FS)
 | |
|   R14     = Totale IVA falsi corrispettivi (reg corr ma doc come FS)
 | |
|   B1      = Codice IVA corrispettivi da ventilare
 | |
|   B2      = Valido per calcolo volume di affari
 | |
|   B3      = Validi per calcolo rimb. infraanuuale
 | |
|   B4      = Riporta il flag RicAcq dei parametri ditta
 | |
| 
 | |
|   Dove: ANNO    e' l'anno di riferimento
 | |
|         ATT     e' il codice attivita'(zerofilled)
 | |
|         TIPOATT e' il tipo di attivita' (1 default, 2 se ci sono anche altre attivita')
 | |
|         REG     e' il registro (ACQ, VEN, COR)
 | |
|         MESE    e' il mese di riferimento
 | |
|         TIPOCR  e' il tipo di costo/ricavo (0,1,2,3,4,5,6,7,8,9: vedi piano dei conti)
 | |
|         CODIVA  e' il codice IVA relativo
 | |
|         TIPODET e' il tipo di detrazione (" " = regime normale, "1" = IVA ind. su acquisti riferiti
 | |
|                 a ricavi esenti, "3" = IVA indicata per passaggi interni al solo fine di calcolo
 | |
|                 ventilazione, "9" IVA non detrabile per articolo 19)
 | |
|         
 | |
| PUM: Tabella di ditta per memorizzare i progressivi IVA
 | |
|   CODTAB  = ANNO[0-3]+CODATT[4,8]+TIPOATT[9,9]+MESE[10,11]
 | |
|   R0      = Totale cessioni beni ammortizzabili
 | |
|   R1      = Totale IVA su cessioni ammortizzabili
 | |
|   R2      = Tot. acquisti ammortizzabili detraz. 6%
 | |
|   R3      = IVA su beni ammortizz. detr. 6%
 | |
|   R4      = Totale vendite esenti IVA riga B1 (C1)
 | |
|   R5      = Totale vendite esenti IVA riga B2 (C2)
 | |
|   R6      = Totale vendite esenti IVA riga B3 (C3)
 | |
|   R7      = Totale acquisti esenti IVA riga B14
 | |
|   R8      = Totale imponibile passaggi interni
 | |
|   R9      = Totale IVA passaggi interni
 | |
|   R10     = Totale imponibile reg. agricolo tipo 1
 | |
|   R11     = Totale imponibile reg. agricolo tipo 2
 | |
|   R12     = Totale imponibile vendite esenti IVA
 | |
|   R13     = Totale vendite esenti iva riga B4 (C1A)
 | |
| 
 | |
| PAM: Tabella di ditta per memorizzare i progressivi IVA
 | |
|   CODTAB  = ANNO[0-3]+CODATT[4,8]+TIPOATT[9,9]+MESE(Z)[10,11] 
 | |
|   R0      = Totale acquisti in regime IVA
 | |
|   R1      = Totale vendite in regime IVA (Vol Aff. Lordo Mensile)
 | |
|   R2      = Totale lordo acquisti beni per rivendita da inizio anno 
 | |
|   R3      = Totale corrispettivi da ventilare 
 | |
|   R4      = Totale imponibile bolle doganali (acquisti)
 | |
|   R5      = Totale IVA bolle doganali (acquisti) 
 | |
|   R6      = Totale imponibile acquisti in sosp. imposta 
 | |
|   R7      = Totale IVA acquisti in sosp. imposta 
 | |
|   R8      = Totale imponibile vendite in sosp. imposta 
 | |
|   R9      = Totale IVA vendite in sosp. imposta 
 | |
|   R10     = Totale imponibile spese generali 
 | |
|   R11     = Totale IVA spese generali
 | |
|   R12     = Totale Imponibile acquisti a esig. diff da detrarre
 | |
|   R13     = Totale IVA acquisti a esig. differita da detrarre
 | |
|   R14     = Totale Imponibile vendita a  esig. differita da pagare
 | |
|   R15     = Totale IVA vendita a esig. differita da pagare
 | |
| 
 | |
| 
 | |
| POM: Tabella di ditta per memorizzare i progressivi IVA
 | |
|   CODTAB  = ANNO[0-3]+CODATT[4,8]+TIPOATT[9,9]+MESE[10,11]
 | |
|   R0      = Totale IVA acquisti intracomunitari (flag INTRA su rmoviva)
 | |
|   R1      = Totale imponibile acquisti non detraibili art. 19
 | |
|   R2      = Totale IVA acquisti non detraibili art. 19
 | |
|   R3      = Totale imponibile acquisti beni ammortizzabili detraibili
 | |
|   R4      = Totale IVA acquisti beni ammortizzabili detraibili
 | |
|   R5      = Totale imponibile acquisti beni per rivendita (non sono tutti base per ventilazione)
 | |
|   R6      = Totale IVA acquisti beni per rivendita
 | |
|   R7      = Totale imponibile beni acquisiti in leasing
 | |
|   R8      = Totale IVA beni acquisiti in leasing
 | |
|   R9      = Totale imponibile acquisti indetraibili su ricavi esenti
 | |
|   R10     = Totale IVA acquisti indetraibili su ricavi esenti
 | |
|   R11     = Totale imponibile acq. beni ammortizz. non detraibili
 | |
|   R12     = Totale IVA acq. beni ammortizz. non detraibili
 | |
|   R13     = IVA a debito agenzie viaggio
 | |
| 
 | |
| PLM: Tabella di ditta per memorizzare i Progressivi Liquidazione Mensili
 | |
|   CODTAB  = ANNO[0-3]+CODATT[4,8]+TIPOATT[9,9]+MESE[10,11] 
 | |
|   R0      = IVA vendite
 | |
|   R1      = IVA acquisti
 | |
|   R2      = Pro-rata indetraibile totale (acq. rif. anno attuale + acq. rif. anni precedenti)
 | |
|   R3      = Ulteriori detrazioni (6%)
 | |
|   R4      = % pro-rata anno precedente
 | |
|   R5      = se AG.VIAGGIO: Corrispettivi CEE; se AGRICOLO: tipo agr. == 1
 | |
|   R6      = se AG.VIAGGIO: Corrispettivi extra CEE; se AGRICOLO: tipo agr. == 2
 | |
|   R7      = se AG.VIAGGIO: Acquisti CEE; se AGRICOLO: tipo agr. == 3
 | |
|   R8      = se AG.VIAGGIO: Acquisti fuori CEE; se AGRICOLO: tipo agr. == 4 
 | |
|   R9      = se AG.VIAGGIO: Corrispettivi misti CEE; se AGRICOLO: tipo agr. == 5
 | |
|   R10     = se AG.VIAGGIO: Acquisti misti CEE; se AGRICOLO: tipo agr. == 6 
 | |
|   R11     = se AG.VIAGGIO: Acquisti misti fuori CEE;
 | |
|   R12     = % pro-rata corrente
 | |
|   R13     = se AGRICOLO: totale iva in detrazione Ia parte tabella A
 | |
|   R14     = Pro-rata indetraibile acq. rif. doc. 2 anni precedenti (ma con % prorata anno addietro)
 | |
|   R15     = Pro-rata indetraibile acq. rif. doc. 3 anni precedenti (ma con % prorata 2 anni addietro)
 | |
|   R16     = % pro-rata 2 anni addietro
 | |
|   B0      = Attivita' calcolata
 | |
|   B1      = TRUE se vi sono documenti con riferimento anno prec. ma manca la tabella (solo dal 1998)
 | |
| 
 | |
| PPA: Tabella di ditta per memorizzare i Progressivi Plafond Attivita mensili
 | |
|   CODTAB  = ANNO[0-3]+CODATT(Z)[4-8]+TIPOATT[9,9](sempre = 1)+MESE(Z)[10,11]TIPOESENZIONE[12,12] 
 | |
|   R0      = Totale acquisti Italia
 | |
|   R1      = Totale acquisti estero (bolle doganali)
 | |
|   R2      = Rimanenza plafond mese precedente (non conteggia il mese in corso)
 | |
| 
 | |
| %PLA: Tabella comune per memorizzare i dati annuali per i PLAfond
 | |
|   CODTAB  = DITTA[0-4]+ANNO[5-8]+CODATT(Z)[9-13]+TIPOATT(sempre = 1)[14,14] 
 | |
|   S1      = (real)Volume di affari attivita' 2 
 | |
|   S2      = (Non utilizzati)
 | |
|   S3      = (Non utilizzati)
 | |
|   S3      = (Non utilizzati)
 | |
|   S7      = Tipo attivita' ("S"ervizio, "M", "E")
 | |
|   R0      = Totale vendite in regime IVA (valido per calcolo prorata)
 | |
|   R1      = Totale acquisti esenti riga B1 (C1)
 | |
|   R2      = Totale acquisti esenti riga B2 (C2)
 | |
|   R3      = Totale acquisti esenti riga B3 (C3)
 | |
|   R4      = Totale cessioni beni ammortizzabili
 | |
|   R5      = Ammontare iniziale plafond art. 8
 | |
|   R6      = Ammontare iniziale plafond art. bis
 | |
|   R7      = Ammontare iniziale plafond art. 9
 | |
|   R8      = % pro-rata 
 | |
|   R9      = conguaglio pro-rata 
 | |
|   R10     = % pro-rata ricalcolato (vale per l'anno successivo) 
 | |
|   R11     = Totale IVA acquisti attivita' (senza pro-rata pagato nell'anno)
 | |
|   R12     = Totale pro-rata pagato nell'anno 
 | |
|   R13     = Totale lordo vendite attivita' 
 | |
|   R14     = Volume affari attivita' 1
 | |
|   R15     = Totale acquisti esenti riga B4 (C1A)
 | |
| 
 | |
| %IVA: Tabella comune per memorizzare i dati relativi ai codici iva
 | |
|   CODTAB  = Codice
 | |
|   S0      = Descrizione
 | |
|   S1      = Tipo codice ("" = Regime normale, "VE" = ricavi da ventilare, "ES" = operazioni esenti"
 | |
|             "NI" = operazioni non imponibili, "NS" = Non soggetti
 | |
|   S3      = Tipo di gestione plafond ("" = gestione normale, "1" Op. art. 8, "2" op. art. 8bis,
 | |
|             "3" op. art. 9)
 | |
|   S4      = Tipo di gestione regime agricolo ("" = regime normale, "1" vendite regime agr.,
 | |
|             "2" = vendite accessorie/acquisti non agr., "3" = acquisti ad uso promiscuo)
 | |
|   S5      = Tipo di gestione per ag. viaggio ("" = regime normale, "1" = op. interno CEE,
 | |
|             "2" = op. fuori CEE, "3" = vendite miste CEE, "4" = acquisti misti parte CEE,
 | |
|             "5" acquisti misti parte fuori CEE)           
 | |
|   S6      = Codice IVA a cui ventilare
 | |
|   S7      = Numero della colonna allegato clienti ("" = non in allegato, "1" = imponibili,
 | |
|             "3" = non imponibili)
 | |
|   S8      = Numero della colonna allegato fornitori ("" = non in allegato "1" = imponibili,
 | |
|             "3" = senza app. imp., "4" = Non imponibili)  
 | |
|   R0      = Aliquota
 | |
|   I0      = Percentuale IVA teorica
 | |
|   S2      = N.ro di riga vendite IVA11 per op. esenti e non imponibili
 | |
|             ""    Nessuno
 | |
|             "20"  Operazioni non imponibili (comma 1, artt.8, 8bis e 9)
 | |
|             "21"  Operazioni non imponibili a seguito di dich. d'intento
 | |
|             "22"  Altre operazioni non imponibili
 | |
|             "24"  Operazioni non soggette (art. 74 comma 7)
 | |
|             "25"  Op. non sogg. effettuate nei confronti di terremotati
 | |
|             "B1"  Ammontare op. es. escluse da nr. 1 a 9 e 11 art. 10
 | |
|             "B2"  Ammontare op. es. di cui al nr. 11 art. 10
 | |
|             "B3"  Ammontare op. es. di cui ai nr. 1 a 9 art. 10
 | |
|             "B4"  Ammontare op. es. di cui ai nr.
 | |
|             "B5"  Ammontare op. es. di cui ai nr.
 | |
|             "G7A" Cessioni intracomunitarie non imponibili
 | |
|             "G7B" Prestazioni di servizi non soggette all'imposta
 | |
|   S9      = N.ro di riga acquisti IVA11 per op. esenti e non imponibili
 | |
|               ""    Nessuno
 | |
|               "10"  Acquisti non imponibili (comma 2, artt8, 8bis e 9)
 | |
|               "11"  Altri acquisti non imponibili
 | |
|               "12"  Acquisti esenti
 | |
|               "13"  Acquisti non soggetti (art. 74 comma 7)
 | |
|               "14"  Acquisti non soggetti all'imposta effettuati dai terremotati
 | |
|   B0      = TRUE se il codice deve comparire nel modello 101
 | |
|   B1      = TRUE se il codice deve comparire nel modello 102
 | |
|   B2      = Codice IVA sospeso (TRUE se vero)
 | |
|   B3      = Codice escluso dal calcolo rimborso infrannuale (TRUE se vero)
 | |
|   B4      = Codice escluso dal calcolo rimborso per aliquota media (TRUE se escluso)
 | |
| 
 | |
| ESC: tabella di ditta per memorizzare gli esercizi contabili
 | |
|   CODTAB  = Codice esercizio
 | |
|   D0      = Data inizio esercizio
 | |
|   D1      = Data fine esercizio
 | |
|   D2      = Data di scarico
 | |
| 
 | |
| RMB: tabella di ditta per memorizzare i rimborsi (obsolete?)
 | |
|   CODTAB  = ANNO[0-3]+MESE(Z)[4-5]+CODIVA(Z)[6-9]+TIPOREG[10,10] 
 | |
|   R0      = Imponibile per rimborso
 | |
|   R1      = IVA per rimborso
 | |
|   R2      = Percentuale IVA relativa
 | |
| 
 | |
| %VER: tabella comune per memorizzare i parametri relativi agli interessi ed ai versamenti.
 | |
|   CODTAB  = ANNO[0,3]+MESE[4,5]
 | |
|   R0      = Percentuale interesse primo trimestre
 | |
|   R1      = Percentuale interesse secondo trimestre
 | |
|   R2      = Percentuale interesse terzo trimestre
 | |
|   R3      = Percentuale interesse quarto trimestre
 | |
|   R4      = Percentuale interesse annuale
 | |
|   R5      = Importo minimo versamento periodico
 | |
|   R6      = Importo minimo versamento annuale
 | |
|   R7      = Importo minimo versamento acconto
 | |
|   R8      = Importo minimo versamento integrativo
 | |
|   R9      = Importo minimo versamento cessazione
 | |
|   R10     = Importo minimo versamento Art. 74
 | |
|   R11     = Percentuale per calcolo acconti su liquidazione normale
 | |
|   R12     = Percentuale per calcolo acconti su liquidazione differita
 | |
| 
 | |
| PIA: Tabella di ditta per memorizzare i Progressivi IVA compensazione Agricoli
 | |
|   CODTAB  = ANNO[0-3]+CODATT[4,8]+TIPOATT[9,9]+MESE[10,11]+IVAORD[12,15]+IVACOM[16,19]
 | |
|   R0      = Totale imponibile
 | |
|   R1      = Totale IVA secondo codice IVA di compensazione
 | |
| 
 | |
| 
 | |
| 
 | |
| 22 Ottobre 1996
 | |
| 
 | |
| SEQUENZA DELLE CHIAMATE A FUNZIONE (FLUSSO GENERICO DEL PROGRAMMA)
 | |
| ==================================================================
 | |
| 
 | |
| Parte I: elaborazioni e calcoli:
 | |
| -------------------------------
 | |
| 
 | |
| schema generico di flusso:
 | |
| 
 | |
| 
 | |
| - set_print() :
 | |
|   * selezione input/ditte
 | |
|   - recalc_all()
 | |
|     * ciclo per ditte selezionate
 | |
|       * setta ditta corrente
 | |
|       * reperisce dati dalla ditta
 | |
|       * controlla sulle lim(B0) dei mesi preceddenti se devono essere ricalcolate
 | |
|       * ciclo da 1 al mese selezionato in input (_month)
 | |
|         - update_firm() per ogni mese del ciclo
 | |
|           * carica alcuni dati della ditta
 | |
|           * ciclo per ogni attivita' della ditta
 | |
|             * ciclo per tipo di attivita' (1 o 2)
 | |
|               * reperisce dati per l'attivita' corrente,
 | |
|                 inizializzando tabelle per memorizzare progressivi e calcoli
 | |
|               * scorre i registri per settare flag per ventilazione (_isvent)
 | |
|               * se e' necessario il calcolo chiama:
 | |
|               - update_att()
 | |
|               * se sta calcolando la 13a chiama:
 | |
|               - recalc_annual()
 | |
|               * se e' richiesto il riepilogo liq ed e' l'ultimo mese
 | |
|                 in elaborazione chiama:
 | |
|               - describe_att()
 | |
|             ** fine ciclo
 | |
|             * se attivita' mista stampa il riepilogo:
 | |
|             - describe_att()
 | |
|           ** fine ciclo
 | |
|           * se quater stampa il riepilogo:
 | |
|           - describe_att()
 | |
|           * se mese compatibile con il regime frequenza IVA:
 | |
|           - write_liq()
 | |
|           * se e' l'ultimo mese in elaborazione del ciclo:
 | |
|           - recalc_rimborso()
 | |
|           * se e' l'ultimo mese in elaborazione del ciclo e deve stampare la liquidazione:
 | |
|           - describe_firm()
 | |
|           - describe_liq()
 | |
|           * se e' stampa registri ed e' stato calcolato l'acconto
 | |
|           - describe_liq_acc();
 | |
|       * fine ciclo per mese
 | |
|     * fine ciclo per ditte
 | |
| 
 | |
| 
 | |
| dettagli di funzioni:
 | |
| 
 | |
| - update_att() // aggiorna i progressivi per la ditta/mese/attivita' corrente
 | |
|   - zero_att() // scorre i pim/pum/pam/plm... e azzera quelli del mese/attivita' corrente
 | |
|   - recalc_att()
 | |
|   - recalc_ventilation()
 | |
|   - recalc_corripettivi()
 | |
| 
 | |
| - recalc_annual() // ricalcola progressivi annuali liq.
 | |
|   * legge dalla PLA alcuni dati
 | |
|   * scorre i PIM dell'anno corrente
 | |
|     * esegue la sommatoria di PIM->R0  per calcolare i volumi d'affari
 | |
|   * scorre i PLM della corrente attivita'
 | |
|     * esegue la sommatoria di alcuni campi di PLM/PUM/PAM
 | |
|   * scrive in PLA i dati calcolati
 | |
| 
 | |
| 
 | |
| - describe_att()
 | |
|   // setta i vari DescrItem, che aggiunge a _descr_arr per la stampa successiva
 | |
|   - describe_name()
 | |
|   - describe_plafond()
 | |
|   - describe_ventilation()
 | |
|   - describe_agricolo()
 | |
|   - describe_viaggio()
 | |
|   - describe_pims()
 | |
|   - describe_consistence()
 | |
| 
 | |
| - write_liq()    // Calcolo liq. mensili e  liq. annuali. Scrive le lim
 | |
|   * posiziona tabella %VER
 | |
|   * calcola mese di rif. per liq. differita
 | |
|   * azzera variabili per totali vari
 | |
|   * ciclo sulle attivita' passate come parametro
 | |
|     * se differita e primo mese setta l'anno precedente
 | |
|     * ciclo su tutti i mesi (1..13)
 | |
|       * posiziona PLM
 | |
|       * totalizza vari importi
 | |
|     * fine ciclo sui mesi
 | |
|     * se agenzia di viaggio e non liq. diff.
 | |
|       * calcola credito costo, debito mensile, perc. ripart.
 | |
|   * fine ciclo su attivita'
 | |
|   * rettifica il risultato con credito prec. in base al mese corrente.
 | |
|   * se e' 13a liq.
 | |
|     * ciclo sulle attivita'
 | |
|       * totalizza volumi d'affari e calcola nuovo prorata, riscrivi PLA e LIA
 | |
|         solo se tipo di attivita' e' 1
 | |
|     * fine ciclo
 | |
|     * riscrive i volumi d'affari in LIA (R1,R2,R3)
 | |
|   * azzera record corrente di LIM, tranne R1, R5, S1, S0, S7
 | |
|   * rettifica il risultato con versamenti, acconto di dicembre...
 | |
|   * schiaffa dentro LIM/LAM vari risultati di calcoli
 | |
|   * mette il flag di ricalcolato sul record LIM del mese corrente(B1)
 | |
|   * se 13a liq. arrotonda alle 1000 lire sup. diversi importi e li rischiaffa in LIM/LAM
 | |
|   * riscrive LIM/LAM
 | |
|   
 | |
| - recalc_rimborso()   // calcola condizioni per il diritto al rimborso infrannuale
 | |
|                       // chiamata soltanto per i trimestri anche se annuale
 | |
|                       // aggiornata a normative per anno liq. > 1994
 | |
|   * ciclo sulle attivita'
 | |
|     * totalizza volume d'affari ed es. non impon. (varia se usare 3 mesi oppure no)
 | |
| 
 | |
|   // Prima condizione per il rimborso
 | |
|   * se rapporto tra esenti e vol. d'affari e > minima parte esente (0.25)
 | |
|     crea il _DescrItem del RIMBORSO
 | |
| 
 | |
|   // Seconda condizione per il rimborso
 | |
|   * scorre i PIM per totalizzare imponibile/imposta acquisti/vendite
 | |
|   * se (iva acquisti/totale acquisti) > (iva vendite/ totale vendite),
 | |
|     ovvero se l'aliquota medit adegli acquisti e' > dell'aliquota media
 | |
|     delle vendite, allora...
 | |
|     * se l'aliquota acquisti eccede la soglia minima (10%) allora si ha diritto al rimborso.
 | |
|     * genera un _DescrItem con totale acquisti/vendite, rispettivi totali
 | |
|       imposte ed aliquota media.
 | |
|   * se sono state riscontrate le condizioni per il rimborso riscrive LIM.
 | |
|   * ritorna il _DescrItem generato.
 | |
| 
 | |
| - describe_firm()
 | |
|   * genera un _DescrItem con i dati della ditta:
 | |
|     rag. soc., freq. iva, mese corrente.
 | |
|   * aggiunge il _DescrItem generato all'array _descr_arr
 | |
| 
 | |
| - describe_liq()
 | |
|   * genera un _DescrItem con i dati finali della liquidazione
 | |
|     con eventuale satellite per il rimborso e prospettino
 | |
|     per i versamenti
 | |
|   * aggiunge il _DescrItem all'array _descr_arr
 | |
| 
 | |
| - describe_liq_acc()
 | |
|   * genera un _DescrItem con i dati per la liquidazione dell'acconto
 | |
|   * aggiunge il _DescrItem a _descr_arr
 | |
| 
 | |
| dettagli di update_att()
 | |
| ************************
 | |
| // funzioni chiave per il calcolo
 | |
| 
 | |
| - recalc_att()
 | |
|   * azzera variabili contenenti i progressivi
 | |
|   * ciclo per gli elementi del cursore impostato.
 | |
|     Il cursore e' cosi' fatto:
 | |
|     LF_MOV
 | |
|       |------->LF_RMOVIVA
 | |
|       |------->LF_CAUSALI
 | |
|     Quindi il ciclo sara' sui movimenti,
 | |
|     controlla se il  registro e' presente, la relativa
 | |
|     riga di rmoviva e' presente e se la data deve essere considerata.
 | |
| 
 | |
|     * ciclo per ogni riga IVA del movimento corrente
 | |
|       * qui totalizza nei vari casi, sottocasi, casi particolari,
 | |
|         tutte le imposte/imponibili, memorizzandoli nei progressivi IVA.
 | |
|     * fine ciclo per righe IVA
 | |
|   * fine ciclo per movimenti
 | |
|   * calcolati tutti i movimenti e aggiornati i pim
 | |
|     se necessario risistema le imposte acquisti beni
 | |
|     per rivendita (scorre i PIM dal primo all'ultimo ricalcolando l'iva e riscrivendoli)  
 | |
|   * calcola il prorata solo se liq. periodica, e lo memorizza in PLM->R2
 | |
|   * se e' agenzia di viaggio memorizza i relativi progressivi
 | |
|   * se e' agricolo memorizza i relativi progressivi
 | |
|   * memorizza sempre e comunque altri progressivi comuni
 | |
|   * riscrive i record delle tabelle mensili(PLM,PAM,PUM,POM)
 | |
| 
 | |
| - recalc_ventilation()  // ricalcolo della ventilazione
 | |
|   * ricalcola i pim dei mesi dal primo al corrente se necessario:
 | |
|     esegue un ciclo da 1 al mese corrente e chiama ogni volta update_att()
 | |
|     (sembra una storia ricorsiva, in realta' lo e' poco)
 | |
|   * ciclo da 1 al mese corrente
 | |
|     // aggiunge gli acquisti del mese m operando sui pim
 | |
|     * ciclo per tutti i PIM relativi. Per i codici != da NS, NI ed ES
 | |
|       aggiunge all'array _vent_arr i progressivi.
 | |
|   * calcola totale acquisti su tutte le aliquote (scorre tutti gli elementi di _vent_arr,
 | |
|     sommando l'elemento _totale.
 | |
|   * calcola totale vendite (solo se mese 13 e si sta calcolando la 13a)
 | |
|   * ricalcola (solo per il mese in corso!) operando sull'array _vend_arr, ove sono
 | |
|     memorizzate le vendite.
 | |
|     * scorre gli elementi di _vend_arr
 | |
|       * calcola la percentuale di ripartizione:
 | |
|         se siamo in annuale si deve ripartire il totale vendite annuale tra i vari mesi,
 | |
|         altrimenti il totale del mese.
 | |
|         L'importo cosi' preparato viene affettato a seconda degli elementi di
 | |
|         _vent_arr, le percentuali di ripartizione sono ottenute dal rapporto
 | |
|         tra il totale acquisti del mese e il totale acquisti
 | |
|       * scorre ancora gli elementi di _vent_arr e calcola l'imposta/imponibile
 | |
|         da ventilar. Corregge l'iva vendite nei PLM->R0 ed il volume
 | |
|         d'affari nei PAM->R1 ed aggiorna i PIM->(R0,R1)
 | |
|       * se siamo in annuale, dopo aver ripartito una prima volta, esce dal ciclo
 | |
|         (in pratica viene eseguito una sola volta)
 | |
|     * fine ciclo
 | |
|   * memorizza i totali per il prospettino di ventilazione
 | |
|   * riscrive il tot. acq e vendite in PAM
 | |
|   
 | |
| - recalc_corrispettivi() // ricalcolo dei corrispettivi
 | |
|   * viene eseguita solo se ci sono elementi in _corr_arr (modificato
 | |
|     tramite add_corrisp() in recalc_att())
 | |
|   * scorre tutti gli elementi di _corr_arr
 | |
|     * per ogni _CorrItem estrae imponibile, imposta
 | |
|     * aggiusta l'IVA vendite in PLM->R0
 | |
|     * aggiusta il volume d'affari in PAM->R1
 | |
|     * aggiorna i PIM->(R0,R1)
 | |
|     * riscrive i records modificati
 | |
|     
 | |
|   
 | |
| 
 | |
| Parte II: stampa:
 | |
| -------------------------------
 | |
| 
 | |
| schema generico di flusso.
 | |
| 
 | |
| * La stampa, avviene dopo aver creato tutti gli opportuni
 | |
|   _DescrItem e memorizzati in _descr_arr.
 | |
|   Per far cio' si utilizza il meccanismo della TPrint_application
 | |
|   pur non utilizzando nessun cursore o relazione di stampa,
 | |
|   basta ridefinire preprocess_page(), postprocess_page() e la
 | |
|   set_page(). Si utilizza quest'ultima come fulcro centrale della stampa
 | |
|   sfruttando il parametro cnt che viene passato alla stessa, visto
 | |
|   che in casi come questi esso e' sempre incrementale.
 | |
|   Per farla in breve, sappiamo tutti che una TPrint_applicatione e' cosi'
 | |
|   fatta:
 | |
| 
 | |
|   * ciclo fintantoche' set_print() [vedi sopra] ritorna TRUE
 | |
|     * ciclo fintantoche' si vuol ripetere la stampa.
 | |
|       * ciclo per il numero di copie della stampa
 | |
|         * ciclo (almeno una volta) fino a quando postprocess_print() ritorna la ripetizione
 | |
|           * se preprocess_print() ritorna TRUE allora
 | |
|             * ciclo (almeno una volta) fino a quando postprocess_page() ritorna la ripetizione
 | |
|               * se preprocess_page() ritorna TRUE allora
 | |
|                 * set_page()
 | |
|                 * print_one()
 | |
|             * fine ciclo
 | |
|         * fine ciclo
 | |
|       * fine ciclo
 | |
|     * fine ciclo
 | |
|   * fine ciclo
 | |
| 
 | |
|   Nel nostro caso la preprocess_page() ritorna TRUE se il numero di elementi di
 | |
|   _descr_arr e' != da 0.
 | |
|   La postprocess_page() ritorna NEXT_PAGE solo se non ci sono elementi in
 | |
|   _descr_arr o se l'elemento che tiene il conteggio (cnt) e' arrivato alla fine (_descr_arr.items()-1)
 | |
| 
 | |
|   Ecco quindi che la set_page() assume una importanza fondamentale per settare le righe di
 | |
|   stampa:
 | |
| - set_page()
 | |
|   * reperisce il _DescrItem corrente grazie a cnt da _descr_arr.
 | |
|   * resetta tutte le righe di stampa
 | |
|   * setta il salto foglio automatico a FALSE
 | |
|   * esegue una selezione multipla in base al membro _flags di
 | |
|     _DescrItem:
 | |
| 
 | |
|     CHG_PARMS
 | |
|     SET_FIRM
 | |
|     PIM_ROW
 | |
|     PIM_HEAD
 | |
|     MISC_LIQ
 | |
|     TOT_ROW
 | |
|     PLAFOND
 | |
|     VENTILA
 | |
|     REGAGR
 | |
|     REGVIA
 | |
|     THE_END
 | |
|     LIQACC
 | |
|     ACCONTO
 | |
|     ACCHEAD
 | |
|     DELDEB
 | |
|     DELCRED
 | |
| 
 | |
|     in base ad ognuno di questi flags viene chiamata una diversa funzione di
 | |
|     set delle righe di stampa.
 | |
| 
 | |
| 
 | |
| 13 Novembre 1996
 | |
| 
 | |
| TRASFERIMENTO IVA11
 | |
| ===================
 | |
| 
 | |
| 
 | |
| Nuova feature aggiunta in occasione delle modifiche per il trasferimento IVA11:
 | |
| 
 | |
| - cache di lettura per i codici IVA e tabella registri.
 | |
| 
 | |
|   Vengono semplicemente mantenuti 2 assoc array (1 per i codici iva ed uno
 | |
|   per i registri) dove ogni volta che viene letto un record nuovo (quindi
 | |
|   non presente nell'array) viene memorizzato. Quando viene richiesta la lettura
 | |
|   di un record viene prima controllato che esso non sia gia' presente in cache.
 | |
|   Le modifiche sono state effettuate nelle funzioni look_iva() e look_reg().
 | |
|   
 | |
| 
 | |
| Per il trasferimento IVA 11 sono state implementate 3 nuove funzioni:
 | |
| iva11_set_arr(), iva11_set_arr_pim(), iva11_write() ed aggiunto un assoc array: _iva11_arr.
 | |
| Il procedimento e relativamente semplice:
 | |
| viene utilizzato un assoc array dove memorizzare i valori da trasferire sui
 | |
| files tab1100a e tab1100b. La chiave per memorizzare i valori viene posta uguale
 | |
| al nome campo relativo, facilitando cosi' l'accesso e senza troppi sprechi di memoria
 | |
| essendo al massimo 125 campi.
 | |
| Il filling dei campi viene effettuato in 2 procedure (iva11_set_arr e iva11_set_arr_pim).
 | |
| La prima viene chiamata quando vengono scorse le righe di movimento IVA (recalc_att());
 | |
| la seconda viene chiamata alla fine del calcolo dell'attivita', prima dello spostamento della
 | |
| relazione sulla prossima (update_firm()).
 | |
| La scrittura dei campi avviene in iva11_write(), chiamata subito dopo la iva11_set_arr_pim().
 | |
| 
 | |
| Particolarita':
 | |
| 
 | |
| iva11_set_arr_pim():
 | |
|   esegue un ciclo per tutti i PIM della ditta, scartando quelli che non servono
 | |
|   e raggruppando quelli che rispondono alle condizioni di trasferimento.
 | |
| 
 | |
| iva11_write():
 | |
|   esegue un ciclo per tutti i campi settati in _iva11_arr, facendo la put() per ognuno
 | |
|   sul rispettivo campo nel file opportuno (LF_TAB1100A o LF_TAB1100B).
 | |
|   Siccome i campi da trasferire sono piu' di 100 e per ora tale limite non puo' essere
 | |
|   superato il trasferimento viene effettuato su 2 files, collegati tramite relazione.
 | |
|   
 | |
| In realta' _iva11_arr e' un _BolgArray, derivato da TAssoc_array,
 | |
| dove sono definiti i metodi add() e sub(), per aggiungere o sottrarre
 | |
| importi all'elemento indicato. Gli elementi stessi di _iva11_arr in realta'
 | |
| non sono solamente real, ma classi derivate da TObject, che contengono un real ed un
 | |
| int identificante il numero logico del file al quale appartiene il campo.
 | |
| 
 | |
| 
 | |
| 20 Novembre 1996
 | |
| 
 | |
| AGGIUNTA STAMPA A36 NEI PROGRESSIVI
 | |
| ===================================
 | |
| 
 | |
| Per stampare cio' si e' seguito l'esempio della stampa di AF (ex A35).
 | |
| Da rilevare, percio', la condizione di raggruppamento di tali progressivi
 | |
| e la memorizzazione in PIM, nel campo S0. Naturalmente, siccome S0 e' una stringa e
 | |
| siccome vanno memorizzati sia imponibile che imposta, il campo sara' una TToken_string
 | |
| i cui elementi (2 real) sono separati da un "!", e non da un "|" per non creare
 | |
| situazione spiacevoli in caso di scarico/carico da un file testo.
 | |
| 
 | |
| 
 | |
| 01 Dicembre 1996
 | |
| 
 | |
| CORRETTO TRASFERIMENTO DI PIU' ATTIVITA' SUL FILE TAB1100
 | |
| =========================================================
 | |
| 
 | |
| La correzione riguarda lo spostamento della funzione iva11_write():
 | |
| 
 | |
| - iva11_write() viene ora chiamata dalla describe_liq(), per aver maggior
 | |
|   controllo sull'azzeramento dei campi R1 ed R2
 | |
| 
 | |
| Ma la modifica principale riguarda la struttura dati utilizzata per memorizzare i dati
 | |
| trasferire.
 | |
| Ora si utilizza un assoc_array principale (_iva11_arr) la cui chiave e'
 | |
| il codice attivita' della ditta. Ogni elemento di _iva11_arr e' a sua
 | |
| volta un assoc_array, la cui chiave e' come nella versione precedente e' il
 | |
| nome del campo da trasferire. Per cui le modifiche fatte in iva11_set_arr(),
 | |
| iva11_set_arr_pim() e iva11_write() riguardano la diversa gestione per
 | |
| memorizzare e scorrere gli elementi dell'assoc_array _iva11_arr.
 | |
| 
 | |
| 
 | |
| 20 Ottobre 1997
 | |
| 
 | |
| IMPLEMENTAZIONE PIM13
 | |
| =========================================================
 | |
| 
 | |
| Implementato il PIM 13, in modo tale da poter eliminare i precedenti
 | |
| errori relativi al calcolo ventilazione annuale/corrispettivi.
 | |
| Prima andava a sommare i risultati dei singoli mesi/trimestri: in
 | |
| realta' per la liquidazione annuale, i mesi vanno considerati
 | |
| come un tutt'uno. Le modifiche operate sono quindi relative al
 | |
| ciclo di scansione ed elaborazione del cursore sui movimenti IVA.
 | |
| Ora non scorre piu' un cursore prima sul mese 1 poi 2, 3, ecc.
 | |
| ma uno unico da 1 a 13, schiaffando i risultati nel relativo PIM del
 | |
| mese 13. Nella fase dei calcoli per ventilazione/scorporo scorrispettivi,
 | |
| non si dovranno piu' fare ripartizioni di importo sui vari mesi precedenti.
 | |
| Inoltre da ora in avanti per calcolare la liquidazione annuale non sara'
 | |
| piu' necessario ricalcolare anche i periodi precedenti.
 | |
| Tutto cio' velocizza un poco il calcolo liquidazione ed il trasferimento ad IVA11.
 | |
| 
 | |
| 
 | |
| 31 Ottobre 1997
 | |
| 
 | |
| NUOVO PROSPETTO REGIME AGRICOLO
 | |
| ===============================
 | |
| Queste modifiche valgono dal 1998 in poi.
 | |
| Aggiunto nuovo FLAG sulla tabella LIA (campo B2), per indicare se
 | |
| trattasi di agricoltore con volume d'affari minimo: sono stati
 | |
| quindi modificati programmi di impostazione parametri liquidazione,
 | |
| apertura anno IVA, oltre a calcolo/stampa.
 | |
| Il nuovo flag di agricoltore minimo serve per selezionare le ditte
 | |
| in calcolo liquidazione: se l'anno e' 1998 o successivi E la liquidazione
 | |
| da calcolare non e' annuale E tale flag e' settato, una determinata ditta
 | |
| non puo' essere inclusa nella lista dei calcoli da effettuare.
 | |
| Viene aggiunta una nuova tabella di progressivi (tabella PIA: Progressivi Iva compensazione
 | |
| Agricoli), il cui tracciato e' il seguente (riportato anche all'inizio)
 | |
| 
 | |
| PIA: Tabella di ditta per memorizzare i Progressivi IVA compensazione Agricoli
 | |
|   CODTAB  = ANNO[0-3]+CODATT[4,8]+TIPOATT[9,9]+MESE[10,11]+IVAORD[12,15]+IVACOM[16,19]
 | |
|   R0      = Totale imponibile
 | |
|   R1      = Totale IVA secondo codice IVA di compensazione
 | |
| 
 | |
| Memorizzazione dei progressivi:
 | |
| 
 | |
| tutte le vendite in regime agricolo con "segnalino" a 1 (che termine di merda che usano su
 | |
| sistema..), vanno sommate distintamente per codice IVA principale + codice IVA compensato.
 | |
| L'imposta  (PIA->R1) va calcolata sul totale imponibile (PIA->R0) per ogni record della tabella,
 | |
| una volta finita la sommatoria.
 | |
| Il codice IVA di compensazione, (udite udite!), viene memorizzato sul
 | |
| PIANO DEI CONTI (nel campo IVACOMP) per ogni SOTTOCONTO di RICAVO(campo INDBIL).
 | |
| Attenzione: per effettiva congruenza il campo INDBIL e' significativo solo sul
 | |
| relativo CONTO, indi si procedera' ad una ulteriore rottura/mazzata sui coglioni, in quanto
 | |
| per ogni movimento IVA si dovranno fare 2 accessi al file del PIANO DEI CONTI:
 | |
|  uno per leggere il codice IVA di compensazione (campo IVACOMP)
 | |
|  uno per leggere se il conto e' di ricavo (campo INDBIL).
 | |
| 
 | |
| Una volta completata la tabella (fatta in recalc_att()), si procedera'
 | |
| alla descrizione di tali progressivi (describe_agricolo()). Il nuovo prospetto
 | |
| viene messo poco prima del prospetto agricolo, ma comunque nella stessa pagina.
 | |
| Nel prospetto agricolo viene aggiunta una riga in piu':
 | |
| 
 | |
| IVA ammessa in detrazione I parte tabella A, il cui importo riguarda il totale
 | |
| dell'iva vendite compensata. Tale importo (PLM->R13) viene sommato al vecchio totale IVA ammessa
 | |
| in detrazione, per avere l'importo corretto.
 | |
| Attenzione, il nuovo calcolo viene applicato solo dal 1998 in poi!!
 | |
| 
 | |
| 
 | |
| 01 Dicembre 1997
 | |
| 
 | |
| IVA11 '97
 | |
| =========
 | |
|  - cambiato A13 in VA7
 | |
|  - aggiunte aliquote 7,5% e 20%
 | |
| 
 | |
|  Variazioni ai campi di trasferimento
 | |
|     rimossi : EC206, FBC* e FC117
 | |
|     aggiunti FC115  FC116   FC209 FC210
 | |
|              SBI07  SBI08   SBF12 SBF13
 | |
|              XC101...XC111  XC201...XC208  (al posto di FBC*)
 | |
|              AGVE05 AGVE06  ABVE05 ABVE06
 | |
|              AGME05 AGME06  ABME05 ABME06
 | |
|     AGME*, AGVE*, ABME* ABVE* sono stati spostati su TAB1100B
 | |
|     L2, L2BIS sono stati spostati su TAB1100B
 | |
| 
 | |
| 
 | |
| 05 Dicembre 1997
 | |
| 
 | |
| PRORATA dal 1998
 | |
| ================
 | |
| Dal 1998 sara' possibile registrare fatture in ritardo con anno data documento
 | |
| precedente all'anno di registrazione stesso.
 | |
| In questo caso ll'importo PRORATA del PERIODO (non annuale) deve essere calcolato
 | |
| applicando la percentuale corrispondente all'anno del documento.
 | |
| Tutti gli acquisti soggetti a pro-rata devono essere distinti in base all'anno della
 | |
| data documento e di conseguenza la detraibilita' deve essere evidenziata e
 | |
| calcolata con due possibili percentuali: una dell'anno attuale e una dell'anno
 | |
| precedente. Se in fase di liquidazione la tabella dell'anno precedente non esiste
 | |
| ma esistono acquisti con anno documento relativo all'anno precedente si calcola il
 | |
| pro-rata con la percentuale corrente, segnalando tuttavia la mancata presenza
 | |
| di tale tabella per l'anno precedente.
 | |
| Per far questo e' stato implementato un oggettino: _ProrataItem, cui vengono
 | |
| settate la percentuale attuale e la percentuale precedente. E' stato implementato
 | |
| anche un metodo calc_prorata() cui si passa il valore degli acquisti ed un flag
 | |
| per calcolare con percentuale attuale o precedente. Nella tabella PLM
 | |
| e' stato recuperato R4 per memorizzare la percentuale pro-rata precedente, inoltre
 | |
| viene memorizzato in R14 il prorata relativo agli acquisti con riferimento anno
 | |
| precedente. In B1, infine, viene settato il flag a TRUE se in stampa
 | |
| esistono documenti dell'anno precedente man non esiste la percentuale
 | |
| pro-rata ad essa relativi.
 | |
| Casistiche: (vedi _ProrataItem::set())
 | |
|  - il calcolo vale solo a partire dal 1998
 | |
|  - se le % sono uguali oppure non siamo ancora nel 1998 considera
 | |
|    tutto sull'anno corrente
 | |
|  - se non ha trovato la percentuale anno prec usa quella corrente,
 | |
|    segnalando pero' l'errore.
 | |
| 
 | |
| 10 Febbraio 1999
 | |
| ================
 | |
| Mannaja!
 | |
| 
 | |
| Ecco quindi svelati i piu' reconditi misteri del programma di liquidazione.
 | |
| Auguro a chiunque buon divertimento.
 | |
| 
 | |
| 
 |