#include "cg2100.h"
#include "cg21sld.h"

TOOLBAR "" 0 20 0 2
#include <toolbar.h>
ENDPAGE

PAGE "Testata" -1 -1 77 20

BOOLEAN F_REGST
BEGIN
  FIELD REGST
  FLAGS "H"
END

BOOLEAN F_STAMPATO
BEGIN
  FIELD STAMPATO
  FLAGS "H"
END

GROUPBOX DLG_NULL 78 3
BEGIN
  PROMPT 1 0 "@BMovimento IVA"
END

NUMBER F_CODDITTA 5
BEGIN
  PROMPT 3 1 "Ditta  "
  FLAGS "DFGR"
  USE LF_NDITTE KEY 1
  INPUT CODDITTA F_CODDITTA
  OUTPUT F_RAGSOC RAGSOC
  CHECKTYPE NORMAL
END

STRING F_RAGSOC 50
BEGIN
  PROMPT 17 1 "Ragione "
  FLAGS "DG"
END

NUMBER F_NUMREG 6
BEGIN
  PROMPT 57 3 "Operazione n. "
  FIELD NUMREG
  FLAGS "DGR"
  KEY 1
  MESSAGE COPY,H_NUMREG
END

DATE F_DATAREG
BEGIN
  PROMPT 1 3 "Data operazione "
  FIELD DATAREG
  MESSAGE COPY,H_DATAREG|COPY,F_ANNOIVA,7,10
  CHECKTYPE REQUIRED
END

NUMBER F_ANNOIVA 4
BEGIN
  PROMPT 32 3 "Anno IVA       "
  FIELD ANNOIVA
  FLAGS "D"
END

DATE F_DATACOMP
BEGIN
  PROMPT 1 4 "Data competenza "
  FIELD DATACOMP
  CHECKTYPE REQUIRED
END

NUMBER F_ANNOES 4
BEGIN
  PROMPT 32 4 "Codice esercizio "
  FIELD ANNOES
  FLAGS "DGZ"
  MESSAGE COPY,H_ANNOES
END

STRING F_CODREG 3
BEGIN
  PROMPT 57 4 "Registro IVA  "
  FLAGS "DUZ"
  FIELD REG
END

STRING F_CODCAUS 3
BEGIN
  PROMPT 1 5 "Causale         "
  FLAGS "UZ"
  FIELD CODCAUS
  USE LF_CAUSALI SELECT REG!=""
  INPUT CODCAUS F_CODCAUS
  DISPLAY "Codice" CODCAUS
  DISPLAY "Descrizione@50" DESCR
  DISPLAY "Tipo" TIPODOC
  DISPLAY "Registro" REG
  OUTPUT F_CODCAUS CODCAUS
  OUTPUT F_DESCRCAUS DESCR
  OUTPUT F_CODREG REG
  OUTPUT F_TIPODOC TIPODOC
  MESSAGE COPY,H_CODCAUS
  CHECKTYPE REQUIRED
  ADD RUN cg0 -4
END

STRING F_DESCRCAUS 50
BEGIN
  PROMPT 25 5 ""
  USE LF_CAUSALI KEY 2 SELECT REG!=""
  INPUT DESCR F_DESCRCAUS
  DISPLAY "Descrizione@50" DESCR
  DISPLAY "Codice" CODCAUS
  DISPLAY "Tipo" TIPODOC
  DISPLAY "Registro" REG
  COPY OUTPUT F_CODCAUS
  MESSAGE COPY,H_DESCRCAUS
  CHECKTYPE REQUIRED
  ADD RUN cg0 -4
END

DATE F_DATADOC
BEGIN
  PROMPT 1 6 "Data documento  "
  FIELD DATADOC
  WARNING "Inserire una data documento non superiore alla data dell'operazione"
  VALIDATE DATE_CMP_FUNC <= F_DATAREG
END

STRING F_TIPODOC 2
BEGIN
  PROMPT 32 6 "Tipo documento "
  FIELD TIPODOC
  FLAGS "D"
END

STRING F_NUMDOC 7
BEGIN
  PROMPT 57 6 "Documento n. "
  FIELD NUMDOC
  FLAGS "U"
  WARNING "La causale o il saldaconto richiedono il numero documento"
END

LIST F_SOLAIVA 1 3
BEGIN
  PROMPT 1 7 "Movimento di sola IVA "
  ITEM " |No"
  ITEM "X|Si"
END

LIST F_PROVVISORIO 1 22
BEGIN
  PROMPT 31 7 "Movimento provvisorio "
  FIELD PROVVIS
  ITEM " |No (movimento normale)"
  ITEM "P|Si (cancellabile)"
  ITEM "N|Si (Non cancellabile)"
  FLAGS "DG"
END

STRING F_DESCAGG 5
BEGIN
  PROMPT 1 8 "Descrizione     "
  FLAGS "UZ"
  USE %DPN
  INPUT CODTAB F_DESCAGG
  DISPLAY "Codice" CODTAB
  DISPLAY "Descrizione@50" S0
  OUTPUT F_DESCAGG CODTAB
  OUTPUT F_DESCR S0
  CHECKTYPE NORMAL
END

STRING F_DESCR 50
BEGIN
  PROMPT 25 8 ""
  FIELD DESCR
  USE %DPN KEY 2
  INPUT S0 F_DESCR
  DISPLAY "Descrizione@50" S0
  DISPLAY "Codice" CODTAB
  COPY OUTPUT F_DESCAGG
END

NUMBER F_PROTIVA 5
BEGIN
  PROMPT 1 9 "Protocollo IVA  "
  FIELD PROTIVA
END

NUMBER F_RIEPILOGO 5
BEGIN
  PROMPT 25 9 "Riepilogo fino al n. "
  FIELD UPROTIVA
  NUM_EXPR {(#F_RIEPILOGO==0)||(#F_RIEPILOGO>=#F_PROTIVA)}
  WARNING "Inserire un riepilogo non inferiore al protocollo IVA (Obbigatorio se il cliete/fornitore ha codice inserimento in  allegati uguale a 3)"
END

NUMBER F_CLIENTE 6
BEGIN
  PROMPT 1 10 "Cliente      "
  FIELD CODCF
  GROUP 1
  USE LF_CLIFO KEY 1
  INPUT TIPOCF "C"
  INPUT CODCF F_CLIENTE
  DISPLAY "Codice" CODCF
  DISPLAY "Ragione Sociale@50" RAGSOC
  DISPLAY "Sospeso" SOSPESO
  DISPLAY "Partita IVA@12" PAIV
  DISPLAY "Codice Fiscale@16" COFI
  OUTPUT F_CLIENTE CODCF
  OUTPUT F_RAGSOCCLIENTE RAGSOC
  OUTPUT F_STATOPAIV STATOPAIV
  OUTPUT F_PIVACLIENTE PAIV
  OUTPUT F_COFICLIENTE COFI
  MESSAGE COPY,F_FORNITORE
  CHECKTYPE REQUIRED
  WARNING "Cliente assente"
  ADD RUN cg0 -1 C
END

NUMBER F_FORNITORE 6
BEGIN
  PROMPT 1 10 "Fornitore    "
  FIELD CODCF
  GROUP 2
  USE LF_CLIFO KEY 1
  INPUT TIPOCF "F"
  INPUT CODCF F_FORNITORE
  DISPLAY "Codice" CODCF
  DISPLAY "Ragione Sociale@50" RAGSOC
  DISPLAY "Sospeso" SOSPESO
  DISPLAY "Partita IVA@12" PAIV
  DISPLAY "Codice Fiscale@16" COFI
  OUTPUT F_FORNITORE CODCF
  OUTPUT F_RAGSOCFORNITORE RAGSOC
  OUTPUT F_STATOPAIV STATOPAIV
  OUTPUT F_PIVAFORNITORE PAIV
  OUTPUT F_COFIFORNITORE COFI
  MESSAGE COPY,F_CLIENTE
  CHECKTYPE REQUIRED
  WARNING "Fornitore assente"
  ADD RUN cg0 -1 F
END

STRING F_RAGSOCFORNITORE 50
BEGIN
  PROMPT 25 10 ""
  GROUP 2
  USE LF_CLIFO KEY 2
  INPUT TIPOCF "F"
  INPUT RAGSOC F_RAGSOCFORNITORE
  DISPLAY "Ragione Sociale@50" RAGSOC
  DISPLAY "Codice" CODCF
  DISPLAY "Sospeso" SOSPESO
  DISPLAY "Partita IVA@12" PAIV
  DISPLAY "Codice Fiscale@16" COFI
  COPY OUTPUT F_FORNITORE
  CHECKTYPE REQUIRED
  ADD RUN cg0 -1 F
END

STRING F_RAGSOCCLIENTE 50
BEGIN
  PROMPT 25 10 ""
  GROUP 1
  USE LF_CLIFO KEY 2
  INPUT TIPOCF "C"
  INPUT RAGSOC F_RAGSOCCLIENTE
  COPY DISPLAY F_RAGSOCFORNITORE
  COPY OUTPUT F_CLIENTE
  CHECKTYPE REQUIRED
  ADD RUN cg0 -1 C
END

STRING F_COFICLIENTE 16
BEGIN
  PROMPT 1 11 "C.F.   "
  GROUP 1
  USE LF_CLIFO KEY 4
  INPUT TIPOCF "C"
  INPUT COFI F_COFICLIENTE
  DISPLAY "Codice fiscale@16" COFI
  DISPLAY "Ragione Sociale@50" RAGSOC
  DISPLAY "Codice" CODCF
  DISPLAY "Sospeso" SOSPESO
  DISPLAY "Partita IVA@12" PAIV
  COPY OUTPUT F_CLIENTE
  CHECKTYPE NORMAL
  ADD RUN cg0 -1 C
END

STRING F_COFIFORNITORE 16
BEGIN
  PROMPT 1 11 "C.F.   "
  GROUP 2
  USE LF_CLIFO KEY 4
  INPUT TIPOCF "F"
  INPUT COFI F_COFIFORNITORE
  COPY DISPLAY F_COFICLIENTE
  COPY OUTPUT F_FORNITORE
  CHECKTYPE NORMAL
  ADD RUN cg0 -1 F
END

STRING F_PIVACLIENTE 12
BEGIN
  PROMPT 28 11 "Partita IVA "
  GROUP 1
  USE LF_CLIFO KEY 5
  INPUT TIPOCF "C"
  INPUT STATOPAIV F_STATOPAIV
  INPUT PAIV F_PIVACLIENTE
  DISPLAY "Partita IVA@12" PAIV
  DISPLAY "Ragione Sociale@50" RAGSOC
  DISPLAY "Codice" CODCF
  DISPLAY "Sospeso" SOSPESO
  DISPLAY "Codice Fiscale@16" COFI
  COPY OUTPUT F_CLIENTE
  CHECKTYPE NORMAL
  ADD RUN cg0 -1 C
END

STRING F_PIVAFORNITORE 12
BEGIN
  PROMPT 28 11 "Partita IVA "
  GROUP 2
  USE LF_CLIFO KEY 5
  INPUT TIPOCF "F"
  INPUT STATOPAIV F_STATOPAIV
  INPUT PAIV F_PIVAFORNITORE
  COPY DISPLAY F_PIVACLIENTE
  COPY OUTPUT F_FORNITORE
  CHECKTYPE NORMAL
  ADD RUN cg0 -1 F
END

LIST F_STATOPAIV 2 18
BEGIN
  PROMPT 57 11 ""
  ITEM "  |Italia o extra CEE"
  ITEM "BE|Belgio"
  ITEM "DE|Germania"
  ITEM "DK|Danimarca"
  ITEM "EL|Grecia"
  ITEM "ES|Spagna"
  ITEM "FR|Francia"
  ITEM "GB|Gran Bretagna"
  ITEM "IE|Irlanda"
  ITEM "IT|Italia"
  ITEM "LU|Lussemburgo"
  ITEM "NL|Olanda"
  ITEM "PT|Portogallo"
  GROUP 1
END

BUTTON F_OCCASEDIT 56
BEGIN
  PROMPT 1 11 "Dati anagrafici del cliente o fornitore occasionale"
  FLAGS "H"
END

STRING F_CODPAG 4
BEGIN
  PROMPT 1 12 "Codice Pagamento "
  FIELD CODPAG
  FLAGS "U#"
  USE %CPG
  INPUT CODTAB F_CODPAG
  DISPLAY "Codice" CODTAB
  DISPLAY "Descrizione@50" S0
  OUTPUT F_CODPAG CODTAB
  OUTPUT F_DESPAG S0
  CHECKTYPE NORMAL
  ADD RUN ba3 -6
  WARNING "Codice pagamento assente"
END

STRING F_DESPAG 50
BEGIN
  PROMPT 27 12 ""
  FLAGS "D"
END

STRING SK_VALUTA 3
BEGIN
  PROMPT 1 13 "Valuta "
  FIELD CODVAL
  FLAGS "UZ"
  GROUP 3
  USE %VAL
  INPUT CODTAB SK_VALUTA
  DISPLAY "Codice" CODTAB
  DISPLAY "Nome@50" S0
  OUTPUT SK_VALUTA CODTAB
  CHECKTYPE NORMAL
  WARNING "Codice valuta assente"
END

DATE SK_DATACAMBIO
BEGIN
  PROMPT 28 13 "Data cambio "
  FIELD DATACAM
  FLAGS "R"
  USE CAM
  INPUT CODTAB[1,3] SK_VALUTA SELECT
  INPUT CODTAB[4,11] SK_DATACAMBIO
  DISPLAY "Valuta" CODTAB[1,3]
  DISPLAY "Data@10" D0
  DISPLAY "Cambio@18" R10
  OUTPUT SK_DATACAMBIO D0
  OUTPUT SK_CAMBIO R10
  GROUP 3
  CHECKTYPE SEARCH
END

NUMBER SK_CAMBIO 15 5
BEGIN
  PROMPT 55 13 "Cambio "
  FIELD CAMBIO
  FLAGS "RU"
  GROUP 3
  PICTURE ".5"
  CHECKTYPE REQUIRED  
  WARNING "Inserire il cambio o eliminare il codice valuta"
END

NUMBER F_TOTALE 15
BEGIN
  PROMPT 1 14 "Totale documento "
  FIELD TOTDOC
  PICTURE "."
END

NUMBER SK_TOTDOCVAL 15 3
BEGIN
  PROMPT 35 14 "Tot. in valuta "
  FIELD TOTDOCVAL
  GROUP 3
  PICTURE ".3"
  VALIDATE REQIF_FUNC 1 F_TOTALE
END

STRING F_CODIVA 4
BEGIN
  PROMPT 67 14 "IVA "
  FLAGS "U"
  USE %IVA
  INPUT CODTAB F_CODIVA
  DISPLAY "Codice" CODTAB
  DISPLAY "Descrizione@50" S0
  DISPLAY "%@6" R0
  DISPLAY "Tipo" S1
  OUTPUT F_CODIVA CODTAB
  CHECKTYPE NORMAL
  VALIDATE ZEROFILL_FUNC 2
  WARNING "Codice IVA assente"
END

NUMBER F_RITFIS 15
BEGIN
  PROMPT 1 15 "Ritenute fiscali "
  FIELD RITFIS
  FLAGS "RV"
  PICTURE "."
END

NUMBER F_RITSOC 15
BEGIN
  PROMPT 1 16 "Ritenute sociali "
  FIELD RITSOC
  FLAGS "RV"
  PICTURE "."
END

DATE F_DATA74TER
BEGIN
  PROMPT 52 15 "Data 74/ter  "
  WARNING "E' richiesta la data del 74/ter"
  CHECKTYPE REQUIRED
  FIELD DATA74TER
END

NUMBER F_ANNORIF 4
BEGIN
  PROMPT 48 16 "Rif.partita "
  FIELD LF_PARTITE->ANNO
  FLAGS "U"
END

STRING F_NUMRIF 7
BEGIN
  PROMPT 66 16 "/ "
  FIELD LF_PARTITE->NUMPART
  FLAGS "U#"
END

STRING F_VALUTAINTRA 3
BEGIN
  PROMPT 1 17 "Valuta intracom. "
  FIELD CODVALI
  FLAGS "UZ"
  GROUP 4
  USE %VAL
  INPUT CODTAB F_VALUTAINTRA
  DISPLAY "Codice" CODTAB
  DISPLAY "Nome@50" S0
  DISPLAY "Cambio@15" R10
  DISPLAY "Ultimo aggiornamento" D0
  OUTPUT F_VALUTAINTRA CODTAB
  CHECKTYPE NORMAL
  WARNING "Codice valuta assente"
  VALIDATE REQIF_FUNC 1 F_CORRVALUTA
END

NUMBER F_CAMBIOINTRA 15 5
BEGIN
  PROMPT 39 17 "Cambio intracomun.   "
  FIELD CAMBIOI
  FLAGS "RU"
  GROUP 4
  PICTURE ".5"
END

NUMBER F_CORRLIRE 15
BEGIN
  PROMPT 1 18 "Corrispett. Lire "
  FIELD CORRLIRE
  FLAGS "R"
  PICTURE "."
  GROUP 4
END

NUMBER F_CORRVALUTA 15 3
BEGIN
  PROMPT 39 18 "Corrispettivo valuta "
  FIELD CORRVALUTA
  FLAGS "R"
  PICTURE ".3"
  GROUP 4
  VALIDATE REQIF_FUNC 1 F_VALUTAINTRA
END

ENDPAGE

PAGE "IVA" -1 -1 77 20

GROUPBOX DLG_NULL 78 4
BEGIN
  PROMPT 1 0 "@BRighe movimento IVA"
END

NUMBER H_NUMREG 6
BEGIN
  PROMPT 2 1 "Operazione n.  "
  FLAGS "D"
END

DATE H_DATAREG
BEGIN
  PROMPT 32 1 "Data "
  FLAGS "D"
END

NUMBER H_ANNOES 4
BEGIN
  PROMPT 54 1 "Codice esercizio "
  FLAGS "DZ"
END

STRING H_CODCAUS 3
BEGIN
  PROMPT 2 2 "Causale        "
  FLAGS "D"
END

STRING H_DESCRCAUS 50
BEGIN
  PROMPT 25 2 ""
  FLAGS "D"
END

SPREADSHEET F_SHEETIVA 0 6
BEGIN
  PROMPT 0 4 ""
  ITEM "Imponibile@15"
  ITEM "Iva@5"
  ITEM "Det@1"
  ITEM "Imposta@15"
  ITEM "CR@1"
  ITEM "CF@1"
  ITEM "Gr."
  ITEM "Co."
  ITEM "Sottoc.@6"
  ITEM "Descrizione Conto@50"
END

NUMBER F_IMPONIBILI 15
BEGIN
  PROMPT 1 11 "Totale imponibili "
  FLAGS "DV"
  PICTURE "."
END

NUMBER F_IMPOSTE 15
BEGIN
  PROMPT 41 11 "Totale imposte   "
  FLAGS "DV"
  PICTURE "."
END

SPREADSHEET F_SHEETCG 0 -2
BEGIN
  PROMPT 0 12 ""
  ITEM "Dare@15F"
  ITEM "Avere@15F"
  ITEM "C/F@1"
  ITEM "Gr."
  ITEM "Co."
  ITEM "Sott.@6"
  ITEM "Descrizione conto@30"
  ITEM "Codice"
  ITEM "Descrizione riga@30"
  ITEM "C/F@1"
  ITEM "Gr./c@3"
  ITEM "Co./c@3"
  ITEM "Sott./c@6"
  ITEM "Descrizione contropartita@30"
  ITEM "Giornale"
  ITEM "Tipo"
END

NUMBER F_DARE 15
BEGIN
  PROMPT 1 -1 "Sbilancio Dare    "
  FLAGS "DRV"
  PICTURE "."
END

NUMBER F_AVERE 15
BEGIN
  PROMPT 41 -1 "Sbilancio Avere  "
  FLAGS "DRV"
  PICTURE "."
END

ENDPAGE

#include "cg21sld.uml"

ENDMASK

#include "cg21iva.uml"
#include "cg21cg.uml"
#include "cg21rata.uml"
