Patch level : 12.0 1086

Files correlati     : bs0.exe bs0500a.msk ba3.exe cg0.exe ve0.exe ve2.exe

Commento        :

Importazione Bee Store
This commit is contained in:
Alessandro Bonazzi 2021-10-04 21:46:01 +02:00
parent c623557ea7
commit a8fe35c9a1
6 changed files with 1643 additions and 1403 deletions

View File

@ -9,7 +9,7 @@ int main(int argc, char** argv)
case 1: bs0200(argc, argv); break; // Importazioni Beestore case 1: bs0200(argc, argv); break; // Importazioni Beestore
case 2: bs0300(argc, argv); break; // Importazione da SKNET case 2: bs0300(argc, argv); break; // Importazione da SKNET
case 3: bs0400(argc, argv); break; // Tabelle di transazione case 3: bs0400(argc, argv); break; // Tabelle di transazione
case 4: bs0500(argc, argv); break; // Importazioni BeeStore Inmaven case 4: bs0500(argc, argv); break; // Importazioni BeeStore Inmaven
default: bs0100(argc, argv); break; // Trasferimento Beestore Impostazione default: bs0100(argc, argv); break; // Trasferimento Beestore Impostazione
} }
return 0; return 0;

View File

@ -1061,13 +1061,13 @@ void TBeeStore_sync::sync_mov(int tipotestata, const TDate& dal, const TDate& al
{ {
str << " AND DataMov"; str << " AND DataMov";
if (dal.ok() && al.ok()) if (dal.ok() && al.ok())
str << " BETWEEN " << date2sql(dal) << " AND " << date2sql(al); str << " BETWEEN " << date2sql(dal, 1) << " AND " << date2sql(al, 2);
else else
{ {
if (dal.ok()) if (dal.ok())
str << ">=" << date2sql(dal); str << ">=" << date2sql(dal, 1);
else else
str << "<=" << date2sql(al); str << "<=" << date2sql(al, 2);
} }
} }
str << "\nORDER BY NumMov,NumRiga"; str << "\nORDER BY NumMov,NumRiga";

View File

@ -492,7 +492,6 @@ void TSknet_sync::sync_anamag()
} }
} }
} }
{ {
// Controllo se esistono varianti e le aggiungo // Controllo se esistono varianti e le aggiungo
query.cut(0) << "SELECT * FROM tieArtVarianti where origine=" << their_origin() << " AND " << where_time_import() << ";"; query.cut(0) << "SELECT * FROM tieArtVarianti where origine=" << their_origin() << " AND " << where_time_import() << ";";
@ -637,57 +636,11 @@ void TSknet_sync::sync_anamag()
if (!flag) if (!flag)
flag = yesno_box("Attenzione trovato articolo con categoria CONAI vuota: %s\nSopprimere eventuali prossimi messaggi?", (const char*)codart); flag = yesno_box("Attenzione trovato articolo con categoria CONAI vuota: %s\nSopprimere eventuali prossimi messaggi?", (const char*)codart);
} }
/*
art.first(); // Useless??
rart.zero();
rart.put(ANAMAG_CODART, odbc.get("Cod_PK").as_string());
if (odbc.get("Cod_PK").as_string().blank())
continue;
if (rart.read(art, _isequal) == NOERR)
{
static TString catCON;
// Metodo del cazzo, format crasha e non ho tempo, magari in un futuro sistemarlo (se non ho visto male funziona solo su linux)
TString a = odbc.get("CatAC").as_string().left(4); a.lpad(4);
TString b = odbc.get("CatAL").as_string().left(4); b.lpad(4);
TString c = odbc.get("CatCA").as_string().left(4); c.lpad(4);
TString d = odbc.get("CatLE").as_string().left(4); d.lpad(4);
TString e = odbc.get("CatPL").as_string().left(4); e.lpad(4);
TString f = odbc.get("CatVE").as_string().left(4); f.lpad(4);
catCON.cut(0) << a << b << c << d << e << f;
/ *
catCON.format("%4 s%4 s%4 s%4 s%4 s%4 s",
odbc.get("CatAC").as_string().left(4), // Categoria Acciaio
odbc.get("CatAL").as_string().left(4), // Categoria Alluminio
odbc.get("CatCA").as_string().left(4), // Categoria Carta
odbc.get("CatLE").as_string().left(4), // Categoria Legno
odbc.get("CatPL").as_string().left(4), // Categoria Plastica
odbc.get("CatVE").as_string().left(4) // Categoria Vetro
);
* /
rart.put(ANAMAG_CONAISC, catCON);
rart.put(ANAMAG_CONACC, odbc.get("PesoAC").as_real()); // Peso Acciaio
rart.put(ANAMAG_CONALL, odbc.get("PesoAL").as_real()); // Peso Alluminio
rart.put(ANAMAG_CONCAR, odbc.get("PesoCA").as_real()); // Peso Carta
rart.put(ANAMAG_CONLEG, odbc.get("PesoLE").as_real()); // Peso Legno
rart.put(ANAMAG_CONPLA, odbc.get("PesoPL").as_real()); // Peso Plastica
rart.put(ANAMAG_CONVET, odbc.get("PesoVE").as_real()); // Peso Vetro
art.rewrite(rart);
}
else
// EROR! EROR!
{
bool tolla = true;
}
*/
} }
} }
} }
static bool ClifoEvaluator(const TISAM_recordset& rec, const char* fldname, const char* expr, TVariant& var) /*static bool ClifoEvaluator(const TISAM_recordset& rec, const char* fldname, const char* expr, TVariant& var)
{ {
const TAnagrafica& a = _anagr.anag(rec); const TAnagrafica& a = _anagr.anag(rec);
@ -804,7 +757,7 @@ static bool ClifoEvaluator(const TISAM_recordset& rec, const char* fldname, cons
} }
return false; return false;
} } */
const TString& TSknet_sync::comune(const TRecordset& recset, const char* fld_cap, const char* fld_den) const const TString& TSknet_sync::comune(const TRecordset& recset, const char* fld_cap, const char* fld_den) const
{ {
@ -910,12 +863,12 @@ void TSknet_sync::load_clifo(const char tipocf)
cfv.put(CFV_PADESTIN, odbc.get("CodDest").as_string()); cfv.put(CFV_PADESTIN, odbc.get("CodDest").as_string());
const int tipo = odbc.get("Tipo").as_int(); // 1=Fisica; 2=Giuridica; 3=Altro const int tipo = odbc.get("Tipo").as_int(); // 1=Fisica; 2=Giuridica; 3=Altro
if (tipo == 1) if (tipo == 1)
{ {
clifo.put(CLI_SESSO, odbc.get("Sesso").as_string()); clifo.put(CLI_SESSO, odbc.get("Sesso").as_string());
clifo.put(CLI_DATANASC, odbc.get("DTNascita").as_date()); clifo.put(CLI_DATANASC, odbc.get("DTNascita").as_date());
clifo.put(CLI_COMNASC, comune(odbc, "", "ComuneNascita")); clifo.put(CLI_COMNASC, comune(odbc, "", "ComuneNascita"));(CLI_TIPOPERS, 'F');
clifo.put(CLI_TIPOPERS, 'F');
} }
else else
clifo.put(CLI_TIPOPERS, 'G'); clifo.put(CLI_TIPOPERS, 'G');
@ -1375,54 +1328,7 @@ void TSknet_sync::sync_val()
sync_table("%VAL", "tieValute", fields); sync_table("%VAL", "tieValute", fields);
} }
//auto find_codalt_sknet = [](TRectype& rcodcor, TLocalisamfile& codcor, const TString& tipocf, long codcf, const TString& codart, TString& codartmag, bool& checked)
//{
// // Testo quanti sono. Non ho altro modo?
// const bool items = rcodcor.next(codcor) == NOERR && rcodcor.get(CODCORR_CODARTALT) == codart;
// if (items)
// {
// rcodcor.prev(codcor);
// // Prima cerco subito se ho un codice per questo cliente.
// // Altrimenti prendo quello che non e' un codice di pack, se c'e' altrimenti riprendo sempre il primo.
// TSQL_recordset codici(TString() << "SELECT * FROM CODCORR WHERE CODARTALT = '" << codart << "' AND TIPOCF = '" << tipocf << "' AND CODCF = '" << codcf << "'");
// if (codici.items() == 1)
// {
// codartmag = codici.get(codici.find_column(CODCORR_CODART)).as_string();
// checked = true;
// }
// else
// {
// TString last_cod = rcodcor.get(CODCORR_CODART);
//
// // Codice di PACK di cinque cifre.
// static auto is_pack_code = [&]()
// {
// bool flag = last_cod.len() == 5;
// for (int i = 0; i < 5 && flag; ++i) flag &= xvt_chr_is_digit(last_cod[i]);
// return flag;
// };
//
// checked = true; // Se va tutto bene ho il nuovo codartmag.
// while (is_pack_code())
// {
// if (rcodcor.next(codcor) == NOERR && rcodcor.get(CODCORR_CODARTALT) == codart)
// {
// last_cod = rcodcor.get(CODCORR_CODART);
// continue;
// }
// checked = false;
// break;
// }
// if (checked)
// {
// if (rcodcor.next(codcor) != NOERR || rcodcor.get(CODCORR_CODARTALT) != codart) // Controllo che sia effettivamente l'unico altrimenenti ciaone.
// codartmag = last_cod;
// else
// checked = false;
// }
// }
// }
//};
void TSknet_sync::sync_doc() void TSknet_sync::sync_doc()
{ {

File diff suppressed because it is too large Load Diff

View File

@ -1,38 +1,43 @@
#define F_DAL 101 #define F_DAL 201
#define F_AL 102 #define F_AL 202
#define F_UMS 103 #define F_UMS 203
#define F_IVA 104 #define F_IVA 204
#define F_LINEART 105 #define F_LINEART 205
#define F_CATMER 106 #define F_CATMER 206
#define F_ART 107 #define F_ART 207
#define F_LIST 108 #define F_SCONTRINI 209
#define F_SCONTRINI 109 #define F_CORRISPETTIVI 210
#define F_CORRISPETTIVI 110 #define F_DOCUMENTI 211
#define F_DOCUMENTI 111 #define F_CARSCAR 212
#define F_CARSCAR 112 #define F_GENERICI 213
#define F_GENERICI 113 #define F_VALUTE 214
#define F_VALUTE 114 #define F_CLIENTI 215
#define F_CLIENTI 115 #define F_FORNITORI 216
#define F_FORNITORI 116
#define F_BARCODE 117
#define F_FATTURE 121 #define F_FATTURE 221
#define F_BOLLE 122 #define F_BOLLE 222
#define F_ORDINI 123 #define F_ORDINI 223
#define F_IMPPARTDOC 124 #define F_IMPPARTDOC 224
#define F_CANCART 125 #define F_CANCART 225
#define F_TIPODOC 126 #define F_TIPODOC 226
#define F_UNITADEFAULT 127 #define F_UNITADEFAULT 227
#define F_IMPTYPE 228
#define F_C_CARSCAR 201 #define F_CODNUM 240
#define F_D_CARSCAR 202
#define F_C_DOCUMENTI 203
#define F_D_DOCUMENTI 204
#define F_C_SCONTRINI 205
#define F_D_SCONTRINI 206
#define F_C_GENERICI 207
#define F_D_GENERICI 208
#define F_C_CORRISPETTIVI 301 #define F_SUFFISSO 101
#define F_D_CORRISPETTIVI 302 #define F_COD_FATTURE 102
#define F_DES_FATTURE 302
#define F_COD_NOTE 103
#define F_DES_NOTE 303
#define F_COD_BOLLE 104
#define F_DES_BOLLE 304
#define F_COD_CARSCAR 105
#define F_DES_CARSCAR 305
#define F_COD_SCONTRINI 106
#define F_DES_SCONTRINI 306
#define F_COD_GENERICI 107
#define F_DES_GENERICI 307
#define F_COD_ORDCLI 108
#define F_DES_ORDCLI 308

View File

@ -6,7 +6,7 @@ ENDPAGE
PAGE "Importazioni da BeeStore" 0 2 0 0 PAGE "Importazioni da BeeStore" 0 2 0 0
GROUPBOX DLG_NULL 78 9 GROUPBOX DLG_NULL 78 6
BEGIN BEGIN
PROMPT 1 1 "@bArchivi" PROMPT 1 1 "@bArchivi"
END END
@ -14,279 +14,286 @@ END
BOOLEAN F_UMS BOOLEAN F_UMS
BEGIN BEGIN
PROMPT 2 2 "Unità di misura " PROMPT 2 2 "Unità di misura "
FIELD SyncUMS FIELD ImpUMS
END END
BOOLEAN F_IVA BOOLEAN F_IVA
BEGIN BEGIN
PROMPT 2 3 "Codici IVA " PROMPT 2 3 "Codici IVA "
FIELD SyncIVA FIELD ImpIVA
END END
BOOLEAN F_LINEART BOOLEAN F_LINEART
BEGIN BEGIN
PROMPT 2 4 "Linee Articolo " PROMPT 2 4 "Linee Articolo "
FIELD SyncLinee FIELD ImpLinee
END
BOOLEAN F_CATMER
BEGIN
PROMPT 2 5 "Categorie Merceologiche"
FIELD SyncCatMer
END
BOOLEAN F_ART
BEGIN
PROMPT 2 6 "Articoli "
FIELD SyncAnamag
END
STRING F_LIST 3
BEGIN
PROMPT 40 6 "Listino "
USE LF_CONDV
INPUT TIPO "L"
INPUT CATVEN ""
INPUT TIPOCF ""
INPUT CODCF ""
INPUT COD 148
DISPLAY "Codice" COD
DISPLAY "Descrizione@50" DESCR
DISPLAY "Valuta@5" CODVAL
DISPLAY "Inizio@10" VALIN
DISPLAY "Fine@10" VALFIN
OUTPUT 148 COD
FIELD SyncListino
END
BOOLEAN F_SCONTRINI
BEGIN
PROMPT 2 7 "Scontrini "
FIELD SyncScontr
END
BOOLEAN F_CORRISPETTIVI
BEGIN
PROMPT 2 8 "Corrispettivi "
FIELD SyncCorr
END
BOOLEAN F_CARSCAR
BEGIN
PROMPT 40 7 "Carichi/scarichi "
FIELD SyncCarScar
END
BOOLEAN F_GENERICI
BEGIN
PROMPT 40 8 "Mov.generici "
FIELD SyncGenerici
END
BOOLEAN F_VALUTE
BEGIN
PROMPT 40 2 "Valute"
FIELD SyncVAL
END
BOOLEAN F_CLIENTI
BEGIN
PROMPT 40 3 "Clienti"
FIELD SyncClienti
END
BOOLEAN F_FORNITORI
BEGIN
PROMPT 40 4 "Fornitori "
FIELD SyncFornitori
END
BOOLEAN F_BARCODE
BEGIN
PROMPT 40 5 "Codici a barre"
FIELD SyncBarCode
END
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 10 "@bDocumenti"
END END
BOOLEAN F_DOCUMENTI BOOLEAN F_DOCUMENTI
BEGIN BEGIN
PROMPT 2 11 "Documenti " PROMPT 2 5 "Documenti "
FIELD SyncDoc FIELD ImpDoc
MESSAGE FALSE CLEAR,F_TIPODOC MESSAGE FALSE CLEAR,F_TIPODOC
MESSAGE TRUE ENABLE,F_TIPODOC MESSAGE TRUE ENABLE,F_TIPODOC
END END
LISTBOX F_TIPODOC 1 15 LISTBOX F_TIPODOC 2 20
BEGIN BEGIN
PROMPT 2 12 "Tipo Documento" PROMPT 20 5 "Tipo Documento"
ITEM "2|Fatture" ITEM "2|Fatture"
ITEM "6|Note di credito" ITEM "6|Note di credito"
ITEM "1|Bolle" ITEM "1|Bolle"
ITEM "9|Ordini" ITEM "9|Ordini"
FIELD SyncTIPODOC ITEM "11|Carichi e scarichi"
ITEM "13|Scontrini"
ITEM "14|Generici"
FIELD ImpTIPODOC
END END
GROUPBOX DLG_NULL 78 3 BOOLEAN F_CATMER
BEGIN BEGIN
PROMPT 1 14 "@bFiltri" PROMPT 30 2 "Categorie Merceologiche"
FIELD ImpCatMer
END
BOOLEAN F_ART
BEGIN
PROMPT 30 3 "Articoli "
FIELD ImpAnamag
END
BOOLEAN F_VALUTE
BEGIN
PROMPT 30 4 "Valute"
FIELD ImpVAL
END
BOOLEAN F_CLIENTI
BEGIN
PROMPT 60 2 "Clienti"
FIELD ImpClienti
END
BOOLEAN F_FORNITORI
BEGIN
PROMPT 60 3 "Fornitori "
FIELD ImpFornitori
END END
DATE F_DAL DATE F_DAL
BEGIN BEGIN
PROMPT 2 15 "Dalla data di modifica " PROMPT 2 7 "Dalla data di modifica "
FIELD SyncDateFrom FIELD ImpDateFrom
END END
DATE F_AL DATE F_AL
BEGIN BEGIN
PROMPT 42 15 " al " PROMPT 42 7 " al "
FIELD SyncDateTo FIELD ImpDateTo
END
ENDPAGE
PAGE "Parametri" 0 2 0 0
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 1 "@bParametri"
END END
BOOLEAN F_IMPPARTDOC BOOLEAN F_IMPPARTDOC
BEGIN BEGIN
PROMPT 2 2 "Importazione Articoli da Documenti" PROMPT 2 9 "Importazione Articoli da Documenti"
FIELD SyncIMPPARTDOC FIELD ImpIMPPARTDOC
MESSAGE TRUE CLEAR,F_CANCART|CLEAR,F_ART MESSAGE TRUE CLEAR,F_CANCART|CLEAR,F_ART
MESSAGE FALSE ENABLE,F_CANCART|ENABLE,F_ART MESSAGE FALSE ENABLE,F_CANCART|ENABLE,F_ART
END END
BOOLEAN F_UNITADEFAULT
BEGIN
PROMPT 2 3 "Unità di Misura (Default)"
FIELD SyncUNITADEFAULT
END
BOOLEAN F_CANCART BOOLEAN F_CANCART
BEGIN BEGIN
PROMPT 40 2 "Elimina Articoli Sospesi" PROMPT 40 9 "Elimina Articoli Sospesi"
FIELD SyncCANCART FIELD ImpCANCART
END END
GROUPBOX DLG_NULL 78 6 BOOLEAN F_UNITADEFAULT
BEGIN BEGIN
PROMPT 1 5 "@bMovimenti" PROMPT 2 10 "Unità di Misura (Default)"
FIELD ImpUNITADEFAULT
END END
STRING F_C_CARSCAR 4 LIST F_IMPTYPE 1 20
BEGIN BEGIN
PROMPT 2 6 "Causale magazzino car./scar. " PROMPT 40 10 "Importa "
USE %CAU SELECT (S2[8,8]=1)&&(S6="P") FIELD ImpTYPE
INPUT CODTAB F_C_CARSCAR ITEM "1|Elementi nuovi"
DISPLAY "Codice" CODTAB ITEM "2|Elementi esistenti"
DISPLAY "Descrizione@50" S0 ITEM "3|Tutto"
OUTPUT F_C_CARSCAR CODTAB
OUTPUT F_D_CARSCAR S0
CHECKTYPE NORMAL
FIELD CODCAUS(1)
ADD RUN mg0 -0 %CAU
END END
STRING F_D_CARSCAR 50 36 SPREADSHEET F_CODNUM 80 10
BEGIN BEGIN
PROMPT 40 6 "" PROMPT 2 13 "Numerazioni"
FLAGS "D" ITEM "Suffisso"
END ITEM "Fatture"
ITEM "Note di\ncredito@6"
STRING F_C_DOCUMENTI 4 ITEM "Bolle@6"
BEGIN ITEM "Carichi\nScarichi"
PROMPT 2 7 "Causale magazzino documenti " ITEM "Scontrini"
USE %CAU SELECT (S2[8,8]=1)&&(S6="P") ITEM "Generici"
INPUT CODTAB F_C_DOCUMENTI ITEM "Ordini\nClienti"
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_C_DOCUMENTI CODTAB
OUTPUT F_D_DOCUMENTI S0
CHECKTYPE NORMAL
FIELD CODCAUS(2)
ADD RUN mg0 -0 %CAU
END
STRING F_D_DOCUMENTI 50 36
BEGIN
PROMPT 40 7 ""
FLAGS "D"
END
STRING F_C_SCONTRINI 4
BEGIN
PROMPT 2 8 "Causale magazzino scontrini "
USE %CAU SELECT (S2[8,8]=1)&&(S6="P")
INPUT CODTAB F_C_SCONTRINI
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_C_SCONTRINI CODTAB
OUTPUT F_D_SCONTRINI S0
CHECKTYPE NORMAL
FIELD CODCAUS(3)
ADD RUN mg0 -0 %CAU
END
STRING F_D_SCONTRINI 50 36
BEGIN
PROMPT 40 8 ""
FLAGS "D"
END
STRING F_C_GENERICI 4
BEGIN
PROMPT 2 9 "Causale magazzino mov.generici "
USE %CAU SELECT (S2[8,8]=1)&&(S6="P")
INPUT CODTAB F_C_GENERICI
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_C_GENERICI CODTAB
OUTPUT F_D_GENERICI S0
CHECKTYPE NORMAL
FIELD CODCAUS(4)
ADD RUN mg0 -0 %CAU
END
STRING F_D_GENERICI 50 36
BEGIN
PROMPT 40 9 ""
FLAGS "D"
END
GROUPBOX DLG_NULL 78 3
BEGIN
PROMPT 1 11 "@bCorrispettivi"
END
STRING F_C_CORRISPETTIVI 4
BEGIN
PROMPT 2 12 "Causale contabile "
USE LF_CAUSALI SELECT TIPODOC="CR"
INPUT CODCAUS F_C_CORRISPETTIVI
DISPLAY "Codice" CODCAUS
DISPLAY "Descrizione@50" DESCR
OUTPUT F_C_CORRISPETTIVI CODCAUS
OUTPUT F_D_CORRISPETTIVI DESCR
CHECKTYPE NORMAL
FIELD CODCAUSC
ADD RUN cg0 -4
END
STRING F_D_CORRISPETTIVI 50 36
BEGIN
PROMPT 40 12 ""
FLAGS "D"
END END
ENDPAGE ENDPAGE
ENDMASK
PAGE "Numerazioni" -1 -1 78 19
STRING F_SUFFISSO 5
BEGIN
PROMPT 1 1 "Suffisso numer."
END
STRING F_COD_FATTURE 4
BEGIN
PROMPT 1 3 "Num.Fatture "
USE %NUM SELECT I1=="2"
INPUT CODTAB F_COD_FATTURE
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_COD_FATTURE CODTAB
OUTPUT F_DES_FATTURE S0
FLAG "UPA"
CHECKTYPE NORMAL
WARNING "Numerazione assente"
END
STRING F_DES_FATTURE 50
BEGIN
PROMPT 25 3 ""
FLAGS "D"
END
STRING F_COD_NOTE 4
BEGIN
PROMPT 1 5 "Num.Note cred. "
COPY USE F_COD_FATTURE
INPUT CODTAB F_COD_NOTE
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_COD_NOTE CODTAB
OUTPUT F_DES_NOTE S0
FLAG "UPA"
CHECKTYPE NORMAL
WARNING "Numerazione assente"
END
STRING F_DES_NOTE 50
BEGIN
PROMPT 25 5 ""
FLAGS "D"
END
STRING F_COD_BOLLE 4
BEGIN
PROMPT 1 7 "Num.Bolle "
USE %NUM SELECT I1=="1"
INPUT CODTAB F_COD_BOLLE
COPY DISPLAY F_COD_FATTURE
OUTPUT F_COD_BOLLE CODTAB
OUTPUT F_DES_BOLLE S0
FLAG "UPA"
WARNING "Numerazione assente"
END
STRING F_DES_BOLLE 50
BEGIN
PROMPT 25 7 ""
FLAGS "D"
END
STRING F_COD_CARSCAR 4
BEGIN
PROMPT 1 9 "Num.Car.Scar. "
USE %NUM SELECT I1=="0"
INPUT CODTAB F_COD_CARSCAR
COPY DISPLAY F_COD_FATTURE
OUTPUT F_COD_CARSCAR CODTAB
OUTPUT F_DES_CARSCAR S0
FLAG "UPA"
CHECKTYPE NORMAL
WARNING "Numerazione assente"
END
STRING F_DES_CARSCAR 50
BEGIN
PROMPT 25 9 ""
FLAGS "D"
END
STRING F_COD_SCONTRINI 4
BEGIN
PROMPT 1 11 "Num.Scontrini "
COPY USE F_COD_CARSCAR
INPUT CODTAB F_COD_SCONTRINI
COPY DISPLAY F_COD_FATTURE
OUTPUT F_COD_SCONTRINI CODTAB
OUTPUT F_DES_SCONTRINI S0
FLAG "UPA"
CHECKTYPE NORMAL
WARNING "Numerazione assente"
END
STRING F_DES_SCONTRINI 50
BEGIN
PROMPT 25 11 ""
FLAGS "D"
END
STRING F_COD_GENERICI 4
BEGIN
PROMPT 1 13 "Num.Scontrini "
COPY USE F_COD_CARSCAR
INPUT CODTAB F_COD_GENERICI
COPY DISPLAY F_COD_FATTURE
OUTPUT F_COD_GENERICI CODTAB
OUTPUT F_DES_GENERICI S0
FLAG "UPA"
CHECKTYPE NORMAL
WARNING "Numerazione assente"
END
STRING F_DES_GENERICI 50
BEGIN
PROMPT 25 13 ""
FLAGS "D"
END
STRING F_COD_ORDCLI 4
BEGIN
PROMPT 1 15 "Num.Ordini Cli."
USE %NUM SELECT I1=="3"
INPUT CODTAB F_COD_ORDCLI
COPY DISPLAY F_COD_FATTURE
OUTPUT F_COD_ORDCLI CODTAB
OUTPUT F_DES_ORDCLI S0
FLAG "UPA"
CHECKTYPE NORMAL
WARNING "Numerazione assente"
END
STRING F_DES_ORDCLI 50
BEGIN
PROMPT 25 15 ""
FLAGS "D"
END
BUTTON DLG_OK 10 2
BEGIN
PROMPT -13 -1 ""
END
BUTTON DLG_DELREC 10 2
BEGIN
PROMPT -23 -1 ""
END
BUTTON DLG_CANCEL 10 2
BEGIN
PROMPT -33 -1 ""
END
ENDPAGE
ENDMASK ENDMASK