#include "ve6200a.h"

TOOLBAR "topbar" 0 0 0 2
#include <stdbar.h>
ENDPAGE

PAGE "Fatturazione" 0 0 0 0

GROUPBOX DLG_NULL 68 4
BEGIN
  PROMPT 1 0 "@bElaborazione"
END

STRING F_CODICE_ELAB 8
BEGIN
  PROMPT 2 1 "Codice      "
  FLAG "U"
  USE %ELD SELECT I0==2
  INPUT CODTAB F_CODICE_ELAB
  DISPLAY "Codice@8" CODTAB
  DISPLAY "Descrizione@50" S0
  DISPLAY "Numerazione" S5
  OUTPUT F_CODICE_ELAB CODTAB
  OUTPUT F_DESCR_ELAB S0
  OUTPUT F_CODICE_NUMERAZIONE S5
  OUTPUT F_USA_DATACONS B9
  CHECKTYPE REQUIRED
END

STRING F_DESCR_ELAB 50
BEGIN
  PROMPT 2 2 "Descrizione "
  USE %ELD KEY 2 SELECT I0==2
  INPUT S0 F_DESCR_ELAB
  DISPLAY "Descrizione@50" S0
  DISPLAY "Codice@8" CODTAB
  DISPLAY "Numerazione" S5
  COPY OUTPUT F_CODICE_ELAB
  CHECKTYPE REQUIRED
END

BOOLEAN F_USA_DATACONS
BEGIN
  PROMPT 2 2 ""
  FLAGS "HG"
  MESSAGE FALSE NORMAL,F_DATA_DOCUMENTO_DA
  MESSAGE TRUE REQUIRED,F_DATA_DOCUMENTO_DA
END

DATE F_DATA_ELAB
BEGIN
  PROMPT 32 1 "Data  "
  FLAG "A"
  VALIDATE DATE_CMP_FUNC >= F_DATA_DOCUMENTO_A
  WARNING "Specificare una data maggiore o uguale a 'a data documento'"
  CHECKTYPE REQUIRED
  MESSAGE COPY,F_ANNO_ELAB,7,10
END

NUMBER F_ANNO_ELAB 4
BEGIN
  PROMPT 55 1 "Anno "
  FLAG "D"
END

GROUPBOX DLG_NULL 68 12
BEGIN
   PROMPT 1 4 "@bEstremi dei documenti da elaborare:"
END

RADIOBUTTON F_ORDINAMENTO 20
BEGIN
  PROMPT 3 5 "@bOrdinamento per"
  ITEM "C|Clienti"
    MESSAGE ENABLE,1@|CLEAR,2@|CLEAR,3@|CLEAR,4@
  ITEM "R|Ragione Soc.Clienti"
    MESSAGE CLEAR,1@|CLEAR,2@|CLEAR,3@|ENABLE,4@
  ITEM "A|Agenti"
    MESSAGE CLEAR,1@|ENABLE,2@|CLEAR,3@|CLEAR,4@
  ITEM "Z|Zone"
    MESSAGE CLEAR,1@|CLEAR,2@|ENABLE,3@|CLEAR,4@
END

RADIOBUTTON F_ORDINAMENTO_2 20
BEGIN
  PROMPT 3 5 "@bSelezione per"
  ITEM "A|Agenti"
    MESSAGE ENABLE,1@|ENABLE,2@|CLEAR,3@|COPY,F_ORDINAMENTO
  ITEM "Z|Zone"
    MESSAGE ENABLE,1@|CLEAR,2@|ENABLE,3@|COPY,F_ORDINAMENTO
  FLAGS "H"  
END

RADIOBUTTON F_SELEZIONE 20
BEGIN
  PROMPT 3 11 "@bSelezione da"
  ITEM "C|Clienti"
    MESSAGE SHOW,F_ORDINAMENTO|HIDE,F_ORDINAMENTO_2|K_SPACE,F_ORDINAMENTO
  ITEM "D|Documenti"
    MESSAGE HIDE,F_ORDINAMENTO|SHOW,F_ORDINAMENTO_2|K_SPACE,F_ORDINAMENTO_2
END

NUMBER F_CODICE_CLIFO_DA 6
BEGIN
  PROMPT 24 5 "da cod. cliente  "
  FLAG "UR"
  USE LF_CLIFO
  INPUT TIPOCF "C"
  INPUT CODCF F_CODICE_CLIFO_DA
  DISPLAY "Cliente" CODCF
  DISPLAY "Ragione sociale@60" RAGSOC
  OUTPUT F_CODICE_CLIFO_DA CODCF
  GROUP 1
END

NUMBER F_CODICE_CLIFO_A 6
BEGIN
  PROMPT 55 5 "a "
  FLAG "UR"
  USE LF_CLIFO
  INPUT TIPOCF "C"
  INPUT CODCF F_CODICE_CLIFO_A
  COPY DISPLAY F_CODICE_CLIFO_DA
  OUTPUT F_CODICE_CLIFO_A CODCF
  NUM_EXPR #F_CODICE_CLIFO_A>=#F_CODICE_CLIFO_DA
  WARNING "Digitare un codice maggiore o uguale al campo 'da codice cliente'"
  GROUP 1
END

STRING F_RAGSOC_CLIFO_DA 50 24
BEGIN
  PROMPT 24 6 "da rag.soc.cli.  "
  USE LF_CLIFO KEY 2
  INPUT TIPOCF "C"
  INPUT RAGSOC F_RAGSOC_CLIFO_DA
  DISPLAY "Ragione sociale@50" RAGSOC
  DISPLAY "Codice cliente," CODCF
  OUTPUT F_RAGSOC_CLIFO_DA RAGSOC
  GROUP 4
END

STRING F_RAGSOC_CLIFO_A 50 24
BEGIN
  PROMPT 24 7  " a rag.soc.cli.  "
  USE LF_CLIFO KEY 2
  INPUT TIPOCF "C"
  INPUT RAGSOC F_RAGSOC_CLIFO_A
  COPY DISPLAY F_RAGSOC_CLIFO_DA
  OUTPUT F_RAGSOC_CLIFO_A RAGSOC
  STR_EXPR #F_RAGSOC_CLIFO_A>=#F_RAGSOC_CLIFO_DA
  WARNING "Digitare una ragione sociale maggiore o uguale al campo 'da rag.soc.cli.'"
  GROUP 4
END

STRING F_CODICE_AGENTE_DA 5
BEGIN
  PROMPT 24 8 "da cod. agente   "
  FLAG "UZ"
  USE LF_AGENTI
  INPUT CODAGE F_CODICE_AGENTE_DA
  DISPLAY "Codice agente" CODAGE
  DISPLAY "Descrizione@50" RAGSOC
  OUTPUT F_CODICE_AGENTE_DA CODAGE
  GROUP 2
END

STRING F_CODICE_AGENTE_A 5
BEGIN
  PROMPT 55 8 "a "
  FLAG "UZ"
  USE LF_AGENTI
  INPUT CODAGE F_CODICE_AGENTE_A
  COPY DISPLAY F_CODICE_AGENTE_DA
  OUTPUT F_CODICE_AGENTE_A CODAGE
  NUM_EXPR #F_CODICE_AGENTE_A>=#F_CODICE_AGENTE_DA
  WARNING "Digitare un codice maggiore o uguale al campo 'da codice agente'"
  GROUP 2
END

STRING F_CODICE_ZONA_DA 2
BEGIN
  PROMPT 24 9 "da codice zona   "
  FLAG "UR"
  USE ZON
  INPUT CODTAB F_CODICE_ZONA_DA
  DISPLAY "Codice Zona" CODTAB
  DISPLAY "Descrizione@50" S0
  OUTPUT F_CODICE_ZONA_DA CODTAB
  GROUP 3
END

STRING F_CODICE_ZONA_A 2
BEGIN
  PROMPT 55 9 "a "
  FLAG "UR"
  USE ZON
  INPUT CODTAB F_CODICE_ZONA_A
  COPY DISPLAY F_CODICE_ZONA_DA
  OUTPUT F_CODICE_ZONA_A CODTAB
  STR_EXPR #F_CODICE_ZONA_A>=#F_CODICE_ZONA_DA
  WARNING "Digitare un codice maggiore o uguale al campo 'da codice zona'"
  GROUP 3
END

DATE F_DATA_DOCUMENTO_DA
BEGIN
  PROMPT 24 11 "da data docum.   "
  VALIDATE DATE_CMP_FUNC <= F_DATA_ELAB
  WARNING "E' necessario specificare una data minore o uguale a 'data elaborazione'"
END

DATE F_DATA_DOCUMENTO_A
BEGIN
  PROMPT 55 11 "a "
  VALIDATE DATE_CMP_FUNC >= F_DATA_DOCUMENTO_DA
  WARNING "Specificare una data maggiore o uguale a 'da data documento'"
END

STRING F_CODICE_NUMERAZIONE 4
BEGIN
  PROMPT 24 12 "Cod. numerazione "
  FLAG "UZ"
  USE %NUM
  INPUT CODTAB F_CODICE_NUMERAZIONE
  DISPLAY "Codice" CODTAB
  DISPLAY "Descrizione@50" S0
  OUTPUT F_CODICE_NUMERAZIONE CODTAB
  CHECKTYPE NORMAL
  MESSAGE EMPTY CLEAR,F_NUMERO_DOCUMENTO_DA|CLEAR,F_NUMERO_DOCUMENTO_A
  MESSAGE ENABLE,F_NUMERO_DOCUMENTO_DA|ENABLE,F_NUMERO_DOCUMENTO_A
END

NUMBER F_NUMERO_DOCUMENTO_DA 7
BEGIN
  PROMPT 24 13 "da num.documento "
  USE LF_DOC   
    JOIN %TIP ALIAS 104 INTO CODTAB=TIPODOC
    JOIN LF_CLIFO INTO TIPOCF=TIPOCF CODCF=CODCF
  INPUT PROVV "D"
  INPUT ANNO F_ANNO_ELAB SELECT
  INPUT CODNUM F_CODICE_NUMERAZIONE SELECT
  INPUT NDOC F_NUMERO_DOCUMENTO_DA
  DISPLAY "Numero" NDOC
  DISPLAY "Tipo@50" 104@->S0
  DISPLAY "Ragione sociale@50" LF_CLIFO->RAGSOC
  OUTPUT F_NUMERO_DOCUMENTO_DA NDOC
  ADD RUN ve0 -0
END

NUMBER F_NUMERO_DOCUMENTO_A 7
BEGIN
  PROMPT 55 13 "a "
  COPY USE F_NUMERO_DOCUMENTO_DA
  INPUT PROVV "D"
  INPUT ANNO F_ANNO_ELAB SELECT
  INPUT CODNUM F_CODICE_NUMERAZIONE SELECT
  INPUT NDOC F_NUMERO_DOCUMENTO_A
  COPY DISPLAY F_NUMERO_DOCUMENTO_DA
  OUTPUT F_NUMERO_DOCUMENTO_A NDOC
  NUM_EXPR (#THIS_FIELD==0)||(#THIS_FIELD>=#F_NUMERO_DOCUMENTO_DA)
  WARNING "Specificare un numero documento superiore a quello di partenza"
  ADD RUN ve0 -0
END

ENDPAGE

ENDMASK