Patch level : 12.0 310 314
Files correlati : Report Clienti e fornitori I report devono avere library = repcom Campi di selezione CODCF Codice RAGSOC Ragione Sociale CAPCF CAP CODAG Codice agente CODZONA Codice Zona CODAG1 Codice Agente 2 CODLIST Codice listino SCONTO Sconto FIDO Fido CODPAG Pagamento CODMAG Magazzino CODDEP Deposito VSDATAREG Data Esenzione CODPORTO Porto CODSPMEZZO Spedizione CATVEN Categoria economica DATAUFATT Data ultima fattura IMPFATT Fatturato netto TOTFATT Totale fatturato DARE Dare AVERE Avere SCADUTO Scaduto MOVIMENTATO Movimentato NINS Numero insoluti ESPCAM Esposto su questi imposta un between coi valori da a vengono anche impostate tutte le variabili #DA_<nome campo> #A_<nome campo> Macro $REPCOM viene sostituito con tutte le select ( between ) costruite con la maschera di input $KEY viene sostituito con la chiave selezionata TIPOCF viene sostituito con col tipo cliente fornitore $ANNO viene sostituito con l'anno di esercizio iniziale $AANNO viene sostituito con l'anno di esercizio finale $DA viene sostituito con la data iniziale $A viene sostituito con la data finale git-svn-id: svn://10.65.10.50/branches/R_10_00@23440 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
2edc3a3bbe
commit
60895564e1
src/ba
ba4100.hba9.cppba9.hba9200.cppba9b00.hba9b00a.umlba9b00a01.umlba9b00a02.umlba9b00a03.umlba9b00a04.umlba9b00a05.umlba9b00a06.umlba9b00a07.umlba9b00a08.umlba9b00a09.umlba9b00a10.umlba9b00a11.umlba9b00a12.umlba9b00a13.umlba9b00a14.umlba9b00a15.umlba9b00a16.umlba9b00a17.umlba9b00a18.umlba9b00a19.umlba9b00a20.umlba9b00a21.umlba9b00a22.umlba9b00a23.umlbamenu.menbarc00001.repbarc00002.rep
106
src/ba/ba4100.h
106
src/ba/ba4100.h
@ -1,106 +0,0 @@
|
||||
#ifndef __BA4100_H
|
||||
#define __BA4100_H
|
||||
|
||||
// campi maschera ba4100a.msk
|
||||
|
||||
#define FLD_CM1_STATO 101
|
||||
#define FLD_CM1_COM 102
|
||||
#define FLD_CM1_DENCOM 103
|
||||
#define FLD_CM1_PROVCOM 104
|
||||
#define FLD_CM1_CAPCOM 105
|
||||
#define FLD_CM1_CODISTAT 106
|
||||
#define FLD_CM1_UFIIDD1 107
|
||||
#define FLD_CM1_DUFIIDD1 108
|
||||
#define FLD_CM1_UFIIDD2 109
|
||||
#define FLD_CM1_DUFIIDD2 110
|
||||
#define FLD_CM1_UFIIDD3 111
|
||||
#define FLD_CM1_DUFIIDD3 112
|
||||
#define FLD_CM1_UFFIVA1 113
|
||||
#define FLD_CM1_DUFFIVA1 114
|
||||
#define FLD_CM1_UFFIVA2 115
|
||||
#define FLD_CM1_DUFFIVA2 116
|
||||
#define FLD_CM1_UFFIVA3 117
|
||||
#define FLD_CM1_DUFFIVA3 118
|
||||
#define FLD_CM2_UFFREG 119
|
||||
#define FLD_CM2_DUFFREG 120
|
||||
#define FLD_CM2_UFFCONC 121
|
||||
#define FLD_CM2_DUFFCONC 122
|
||||
#define FLD_CM2_UFFCSERV 123
|
||||
#define FLD_CM2_DUFFCSERV 124
|
||||
#define FLD_CM2_UFFESPROV 125
|
||||
#define FLD_CM2_DUFFESPROV 126
|
||||
#define FLD_CM2_UFFESCOM 127
|
||||
#define FLD_CM2_DUFFESCOM 128
|
||||
#define FLD_CM2_ALIQICI 129
|
||||
#define FLD_CM1_DENSTA 130
|
||||
#define FLD_CM2_COMAGG 131
|
||||
#define FLD_CM2_DENCOMAGG 132
|
||||
#define FLD_CM2_TERRMON 133
|
||||
#define FLD_CM2_STATO 134
|
||||
#define FLD_CM2_COM 135
|
||||
#define FLD_CM2_DENCOM 136
|
||||
#define FLD_CM2_DENSTA 137
|
||||
#define F_CODREG 138
|
||||
#define F_DESREG 139
|
||||
#define F_CODUUE1 140
|
||||
#define F_DESUUE1 141
|
||||
#define F_CODUUE2 142
|
||||
#define F_DESUUE2 143
|
||||
#define F_CODUUE3 144
|
||||
#define F_DESUUE3 145
|
||||
#define F_CODUUE4 146
|
||||
#define F_DESUUE4 147
|
||||
#define F_CODUUE5 148
|
||||
#define F_DESUUE5 149
|
||||
#define F_CODUUE6 150
|
||||
#define F_DESUUE6 151
|
||||
#define F_CODUUE7 152
|
||||
#define F_DESUUE7 153
|
||||
#define F_CODUUE8 154
|
||||
#define F_DESUUE8 155
|
||||
#define F_CODUUE9 156
|
||||
#define F_DESUUE9 157
|
||||
#define F_CODUUE10 158
|
||||
#define F_DESUUE10 159
|
||||
|
||||
#define FLD_CM3_STATO 160
|
||||
#define FLD_CM3_COM 161
|
||||
#define FLD_CM3_DENCOM 162
|
||||
#define FLD_CM3_DENSTA 163
|
||||
|
||||
#define N_STATO "STATO"
|
||||
#define N_COM "COM"
|
||||
#define N_DEN_COM "DENCOM"
|
||||
#define N_PROV "PROVCOM"
|
||||
#define N_CAP "CAPCOM"
|
||||
#define N_ISTAT "CODISTAT"
|
||||
#define N_IMPDIR1 "UFFIIDD1"
|
||||
#define N_IMPDIR2 "UFFIIDD2"
|
||||
#define N_IMPDIR3 "UFFIIDD3"
|
||||
#define N_IVA1 "UFFIVA1"
|
||||
#define N_IVA2 "UFFIVA2"
|
||||
#define N_IVA3 "UFFIVA3"
|
||||
#define N_REG "UFFREG"
|
||||
#define N_CONC "UFFCONC"
|
||||
#define N_CENTRO_SERV "UFFCSERV"
|
||||
#define N_ESATT_PROV "UFFESPROV"
|
||||
#define N_ESATT_COM "UFFESCOM"
|
||||
#define N_ALIQ_ICI "ALIQICI"
|
||||
|
||||
#endif // __BA4100_H
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
14
src/ba/ba9.cpp
Normal file
14
src/ba/ba9.cpp
Normal file
@ -0,0 +1,14 @@
|
||||
#include <xvt.h>
|
||||
|
||||
#include "ba9.h"
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
const int r = (argc > 1) ? argv[1][1] - '0' : 0;
|
||||
switch (r)
|
||||
{
|
||||
case 1:ba9200(argc, argv); break; // Reporting commerciale ba9200
|
||||
default: ba9200(argc, argv); break; // Reporting commerciale ba9200
|
||||
}
|
||||
return 0;
|
||||
}
|
6
src/ba/ba9.h
Normal file
6
src/ba/ba9.h
Normal file
@ -0,0 +1,6 @@
|
||||
#ifndef __LV0_H
|
||||
#define __LV0_H
|
||||
|
||||
int ba9200(int argc, char* argv[]);
|
||||
|
||||
#endif // __LV0_H
|
636
src/ba/ba9200.cpp
Normal file
636
src/ba/ba9200.cpp
Normal file
@ -0,0 +1,636 @@
|
||||
#include <applicat.h>
|
||||
#include <automask.h>
|
||||
#include <assoc.h>
|
||||
#include <expr.h>
|
||||
#include <reprint.h>
|
||||
#include <progind.h>
|
||||
#include <varmask.h>
|
||||
#include <utility.h>
|
||||
#include "ba9b00.h"
|
||||
#include "../cg/cgsaldac.h"
|
||||
#include "../ve/velib07.h"
|
||||
#include <clifo.h>
|
||||
#include <pconti.h>
|
||||
#include <partite.h>
|
||||
#include <saldi.h>
|
||||
#include <cfven.h>
|
||||
#include <doc.h>
|
||||
#include <rdoc.h>
|
||||
|
||||
#define RPC_DATAUFATT "DATAUFATT"
|
||||
#define RPC_IMPFATT "IMPFATT"
|
||||
#define RPC_TOTFATT "TOTFATT"
|
||||
#define RPC_DARE "DARE"
|
||||
#define RPC_AVERE "AVERE"
|
||||
#define RPC_SCADUTO "SCADUTO"
|
||||
#define RPC_MOVIMENTATO "MOVIMENTATO"
|
||||
|
||||
#define RPC_SOLV "SOLV"
|
||||
#define RPC_NINS "NINS"
|
||||
#define RPC_ESPCAM "ESPCAM"
|
||||
|
||||
HIDDEN const char * const __fields[] = { TOSTRING(LF_CLIFO) "->" CLI_CODCF, TOSTRING(LF_CLIFO) "->" CLI_RAGSOC, TOSTRING(LF_CLIFO) "->" CLI_CAPCF, TOSTRING(LF_CFVEN) "->" CFV_CODAG,
|
||||
TOSTRING(LF_CLIFO) "->" CLI_CODZONA, TOSTRING(LF_CFVEN) "->" CFV_CODAG1, TOSTRING(LF_CFVEN) "->" CFV_CODLIST, TOSTRING(LF_CFVEN) "->" CFV_SCONTO,
|
||||
TOSTRING(LF_CLIFO) "->" CLI_FIDO, TOSTRING(LF_CLIFO) "->" CLI_CODPAG, TOSTRING(LF_CFVEN) "->" CFV_CODMAG, TOSTRING(LF_CFVEN) "->" CFV_CODDEP,
|
||||
TOSTRING(LF_CFVEN) "->" CFV_VSDATAREG, TOSTRING(LF_CFVEN) "->" CFV_CODPORTO, TOSTRING(LF_CFVEN) "->" CFV_CODSPMEZZO, TOSTRING(LF_CFVEN) "->" CFV_CATVEN,
|
||||
RPC_DATAUFATT, RPC_IMPFATT, RPC_TOTFATT, RPC_DARE,
|
||||
RPC_AVERE, RPC_SCADUTO, RPC_MOVIMENTATO, NULL };
|
||||
|
||||
HIDDEN const char * const __field_descrs[] = { "Codice", "Ragione Sociale", "CAP", "Codice agente", "Codice Zona",
|
||||
"Codice Agente 2", "Codice listino", "Sconto", "Fido", "Pagamento",
|
||||
"Magazzino", "Deposito", "Data Esenzione", "Porto", "Spedizione",
|
||||
"Categoria economica", "Data ultima fattura", "Fatturato netto", "Totale fatturato", "Dare",
|
||||
"Avere", "Scaduto", "Movimentato", NULL };
|
||||
|
||||
HIDDEN bool __need_es[] = { false, false, false, false, false,
|
||||
false, false, false, false, false,
|
||||
false, false, false, false, false,
|
||||
false, true, true, true, true,
|
||||
true, true, true
|
||||
};
|
||||
HIDDEN bool __virtual[] = { false, false, false, false, false,
|
||||
false, false, false, false, false,
|
||||
false, false, false, false, false,
|
||||
false, true, true, true, true,
|
||||
true, true, true
|
||||
};
|
||||
HIDDEN const char * const __macros[] = { "$REPSEL", "$KEY", "$TIPOCF", "$TIPOCF", "$ANNO", "$AANNO", "$DA", "$A",
|
||||
NULL };
|
||||
|
||||
/* 09 N.INSOLUTI
|
||||
SOLVIBILITA */
|
||||
|
||||
class TReporting_clienti_fornitori : public TSkeleton_application
|
||||
{
|
||||
|
||||
protected:
|
||||
void update_recset(TDocument_report & rep, const TMask & m);
|
||||
virtual const char * extra_modules() const { return "RS"; }
|
||||
|
||||
virtual void main_loop();
|
||||
virtual void print();
|
||||
};
|
||||
|
||||
void TReporting_clienti_fornitori::print()
|
||||
{
|
||||
WINDOW win = cur_win(); // Trova la finestra corrente di XVT
|
||||
if (win != NULL_WIN && win != TASK_WIN) // E' una finestra valida?
|
||||
{
|
||||
TWindow* w = (TWindow*)xvt_vobj_get_data(win); // Risale alla classe originale
|
||||
if (w != NULL) // E' una TWindow valida? (sarebbe TMask)
|
||||
w->stop_run(K_ENTER); // Simula la pressione del bottone stampa
|
||||
}
|
||||
}
|
||||
|
||||
class TRepcom_recordset : public TDocument_recordset
|
||||
{
|
||||
int _codes;
|
||||
int _codes_to;
|
||||
TAssoc_array _fields_val;
|
||||
TExpression _virtual;
|
||||
TString_array _num;
|
||||
// long _fromcli;
|
||||
// long tocli;
|
||||
|
||||
protected:
|
||||
virtual const TVariant& get_field(int num, const char* field) const;
|
||||
void scaduto_al(const TString4 & tipo, const long codcf, const TDate & data, real & scaduto, real & esposto, real & nins);
|
||||
bool saldo_cont_al(const TString4 & tipo, const long codcf, const TDate & data, real & dare, real & avere);
|
||||
void load_cli_val(const TString4 & tipo, const long codcf, TAssoc_array * vals);
|
||||
const TVariant& get_field_value(const TString & field) ;
|
||||
|
||||
public:
|
||||
void set_es(int codes) { codes > 0 ?_codes = codes : 2002;}
|
||||
void set_es_to(int codes) { codes > 0 && codes >= _codes ? _codes_to = codes : esercizi().last();}
|
||||
void set_virtual(const char *select) { _virtual.set(select, _strexpr); }
|
||||
bool eval_virtual();
|
||||
TAssoc_array & get_curr_row();
|
||||
virtual TCursor* cursor() const;
|
||||
|
||||
TRepcom_recordset(const char* use);
|
||||
virtual ~TRepcom_recordset() {}
|
||||
};
|
||||
|
||||
HIDDEN TRepcom_recordset * __r = NULL;
|
||||
|
||||
bool virfunc(const TRelation* r)
|
||||
{
|
||||
return __r->eval_virtual();
|
||||
}
|
||||
|
||||
TAssoc_array & TRepcom_recordset::get_curr_row()
|
||||
{
|
||||
const TString4 tipo = get(CLI_TIPOCF).as_string();
|
||||
const TString cod = get(CLI_CODCF).as_string();
|
||||
TAssoc_array * row = (TAssoc_array *) _fields_val.objptr(cod);
|
||||
|
||||
if (row ==NULL)
|
||||
{
|
||||
_fields_val.add(cod, row = new TAssoc_array);
|
||||
this->load_cli_val(tipo, atol(cod), row);
|
||||
}
|
||||
return * row;
|
||||
}
|
||||
|
||||
bool TRepcom_recordset::eval_virtual()
|
||||
{
|
||||
TAssoc_array & row = get_curr_row();
|
||||
|
||||
FOR_EACH_ASSOC_OBJECT(row, obj, key, val)
|
||||
if (_virtual.exist(key))
|
||||
_virtual.setvar(key, ((TVariant *) val)->as_string());
|
||||
return _virtual.as_bool();
|
||||
}
|
||||
|
||||
TCursor* TRepcom_recordset::cursor() const
|
||||
{
|
||||
TCursor * c = TDocument_recordset::cursor();
|
||||
|
||||
if (_virtual.string()[0] != '\0')
|
||||
c->set_filterfunction(virfunc);
|
||||
return c;
|
||||
}
|
||||
|
||||
TRepcom_recordset::TRepcom_recordset(const char* use)
|
||||
: TDocument_recordset(use)
|
||||
{
|
||||
TString_array tip;
|
||||
|
||||
numerazioni_fatture(_num, tip);
|
||||
TCursor & c = *cursor();
|
||||
|
||||
__r = this;
|
||||
}
|
||||
|
||||
void TRepcom_recordset::scaduto_al(const TString4 & tipo, const long codcf, const TDate & data, real & scaduto, real & esposto, real & nins)
|
||||
{
|
||||
TString query("USE ");
|
||||
TDate rischio = data;
|
||||
|
||||
rischio -= 10 ;
|
||||
query << LF_PARTITE << "\nFROM " << PART_TIPOCF << "='" << tipo << "' " << PART_GRUPPO << "='' " << PART_CONTO << "=''\n"
|
||||
<< PART_SOTTOCONTO << "='" << codcf << "' "
|
||||
<< "TO " << PART_TIPOCF << "='" << tipo << "' " << PART_GRUPPO << "='' " << PART_CONTO << "=''\n"
|
||||
<< PART_SOTTOCONTO << "='" << codcf << "' ";
|
||||
|
||||
TISAM_recordset part(query);
|
||||
|
||||
for (bool ok=part.move_first(); ok; ok = part.move_next())
|
||||
{
|
||||
TPartita p(part.cursor()->curr());
|
||||
const int last = p.last();
|
||||
|
||||
scaduto +=p.calcola_scaduto_al(false, data);
|
||||
|
||||
for (int i = p.prima_fattura(); i >= 0 && i <= last; i = p.succ(i))
|
||||
{
|
||||
TRiga_partite & riga = p.riga(i);
|
||||
|
||||
if (riga.is_fattura())
|
||||
{
|
||||
const int nrate = riga.rate();
|
||||
bool sbf = false;
|
||||
|
||||
for (int r = 1; r <= nrate; r++)
|
||||
{
|
||||
TRiga_scadenze& s = riga.rata(r);
|
||||
TImporto esposto_scad = s.esposto(false, data, rischio, sbf); esposto_scad.normalize(tipo == "C" ? 'D' : 'A');
|
||||
|
||||
esposto += esposto_scad.valore();
|
||||
}
|
||||
}
|
||||
else
|
||||
if (riga.is_insoluto())
|
||||
nins += UNO;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool TRepcom_recordset::saldo_cont_al(const TString4 & tipo, const long codcf, const TDate & data, real & dare, real & avere)
|
||||
{
|
||||
TString query("USE ");
|
||||
|
||||
query << LF_SALDI << " KEY 3 SELECT ((" << SLD_SOTTOCONTO << "=" << codcf << ")&&("<< LF_PCON << "->" << PCN_TMCF << "==\"" << tipo << "\"))\nJOIN "
|
||||
<< LF_PCON << " INTO " << PCN_GRUPPO << "==" << SLD_GRUPPO
|
||||
<< " " << PCN_CONTO << "==" << SLD_CONTO << "\n"
|
||||
<< "FROM " << SLD_SOTTOCONTO << "=" << codcf << " " << SLD_ANNOES << "=" << _codes << "\n"
|
||||
<< "TO " << SLD_SOTTOCONTO << "=" << codcf << " " << SLD_ANNOES << "=" << _codes_to << "\n" ;
|
||||
|
||||
TISAM_recordset saldi(query);
|
||||
|
||||
dare = ZERO;
|
||||
avere = ZERO;
|
||||
for (bool ok=saldi.move_first(); ok; ok = saldi.move_next())
|
||||
{
|
||||
const real si = saldi.get(SLD_SALDO).as_real();
|
||||
|
||||
if (saldi.get(SLD_FLAGSALINI).as_string() == "D")
|
||||
dare += si;
|
||||
else
|
||||
avere += si;
|
||||
dare += saldi.get(SLD_PDARE).as_real();
|
||||
avere += saldi.get(SLD_PAVERE).as_real();
|
||||
}
|
||||
return dare != ZERO || avere != ZERO;
|
||||
}
|
||||
|
||||
void TRepcom_recordset::load_cli_val(const TString4 & tipo, const long codcf, TAssoc_array * vals)
|
||||
{
|
||||
// manca RPC_SOLV
|
||||
TDate ult;
|
||||
real totnetto;
|
||||
real totfatt;
|
||||
real dare;
|
||||
real avere;
|
||||
real scaduto;
|
||||
real solv;
|
||||
real nins;
|
||||
real espcam;
|
||||
|
||||
if (_codes == 0)
|
||||
_codes = esercizi().last();
|
||||
TString query("USE ");
|
||||
|
||||
query << LF_DOC << " KEY 2\nFROM " << DOC_TIPOCF << "='" << tipo << "' "
|
||||
<< DOC_CODCF << "='" << get(DOC_CODCF) << "' " << DOC_PROVV << "='D' " << DOC_ANNO << "='" << _codes << "'\n"
|
||||
<< "TO " << DOC_TIPOCF << "='" << tipo << "' "
|
||||
<< DOC_CODCF << "='" << get(DOC_CODCF) << "' " << DOC_PROVV << "='D' " << DOC_ANNO << "='" << _codes_to << "'\n";
|
||||
|
||||
TDocument_recordset fatt(query);
|
||||
|
||||
for (bool ok=fatt.move_first(); ok; ok = fatt.move_next())
|
||||
{
|
||||
const TString4 num = fatt.get(DOC_CODNUM).as_string();
|
||||
|
||||
if (_num.find(num) >= 0)
|
||||
{
|
||||
const TDocumento & doc = fatt.doc(fatt.cursor()->curr());
|
||||
const TDate datadoc = doc.get_date(DOC_DATADOC);
|
||||
|
||||
if (datadoc > ult)
|
||||
ult = datadoc;
|
||||
TCurrency_documento netto(doc.totale_netto(), doc);
|
||||
|
||||
netto.change_to_firm_val();
|
||||
totnetto += netto.get_num();
|
||||
|
||||
TCurrency_documento tot(doc.totale_doc(), doc);
|
||||
|
||||
tot.change_to_firm_val();
|
||||
totfatt += tot.get_num();
|
||||
}
|
||||
}
|
||||
|
||||
scaduto_al(tipo, codcf, TDate(TODAY), scaduto, espcam, nins);
|
||||
vals->add(RPC_MOVIMENTATO, saldo_cont_al(tipo, codcf, TDate(TODAY), dare, avere) ? TVariant("X") : NULL_VARIANT);
|
||||
vals->add(RPC_DATAUFATT, TVariant(ult));
|
||||
vals->add(RPC_IMPFATT, TVariant(totnetto));
|
||||
vals->add(RPC_TOTFATT, TVariant(totfatt));
|
||||
vals->add(RPC_DARE, TVariant(dare));
|
||||
vals->add(RPC_AVERE, TVariant(avere));
|
||||
vals->add(RPC_SCADUTO, TVariant(scaduto));
|
||||
vals->add(RPC_SOLV, TVariant(solv));
|
||||
vals->add(RPC_NINS, TVariant(nins));
|
||||
vals->add(RPC_ESPCAM, TVariant(espcam));
|
||||
}
|
||||
|
||||
const TVariant& TRepcom_recordset::get_field_value(const TString & field)
|
||||
{
|
||||
TVariant& var = get_tmp_var();
|
||||
TAssoc_array & row = get_curr_row();
|
||||
TVariant * v = (TVariant *) row.objptr(field);
|
||||
|
||||
if (v != NULL)
|
||||
var = *v;
|
||||
|
||||
return var;
|
||||
}
|
||||
|
||||
const TVariant& TRepcom_recordset::get_field(int num, const char* field) const
|
||||
{
|
||||
const TString16 f(field);
|
||||
|
||||
if (f == RPC_DATAUFATT || f == RPC_IMPFATT || f == RPC_TOTFATT ||
|
||||
f == RPC_DARE || f == RPC_AVERE || f == RPC_MOVIMENTATO ||
|
||||
f == RPC_SCADUTO || f == RPC_SOLV || f == RPC_NINS || f == RPC_ESPCAM)
|
||||
return ((TRepcom_recordset *)this)->get_field_value(f);
|
||||
return TDocument_recordset::get_field(num, field);
|
||||
}
|
||||
|
||||
void TReporting_clienti_fornitori::update_recset(TDocument_report & rep, const TMask & m)
|
||||
{
|
||||
TString select;
|
||||
TString virsel;
|
||||
TSheet_field & s = m.sfield(F_SHEET);
|
||||
const int nrows = s.items();
|
||||
const int key = m.get_int(F_KEY);
|
||||
TISAM_recordset *r = (TISAM_recordset*) rep.recordset();
|
||||
TString query = r->query_text();
|
||||
|
||||
for (int i = 0; i < nrows; i++)
|
||||
{
|
||||
TToken_string & row = s.row(i);
|
||||
TString fromval(row.get(1));
|
||||
TString toval(row.get(2));
|
||||
|
||||
if (fromval.full() || toval.full())
|
||||
{
|
||||
if ( i == 0 && key == 1)
|
||||
{
|
||||
int pos = 0;
|
||||
for (int j = 0; pos >= 0 && j < 2; j++)
|
||||
{
|
||||
pos = query.find("$TIPOCF", pos);
|
||||
|
||||
if (pos >= 0)
|
||||
{
|
||||
pos += 8;
|
||||
TString wrk;
|
||||
const TString val = row.get(j + 1);
|
||||
|
||||
if (val.full())
|
||||
wrk << ' ' << CLI_CODCF << "='" << val << "'";
|
||||
query.insert(wrk, pos);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
if ( i == 1 && key == 2)
|
||||
{
|
||||
int pos = 0;
|
||||
for (int j = 0; pos >= 0 && j < 2; j++)
|
||||
{
|
||||
pos = query.find("$TIPOCF", pos);
|
||||
|
||||
if (pos >= 0)
|
||||
{
|
||||
pos += 8;
|
||||
TString wrk;
|
||||
const TString val = row.get(j + 1);
|
||||
|
||||
if (val.full())
|
||||
wrk << ' ' << CLI_RAGSOC << "='" << val << "\'";
|
||||
query.insert(wrk, pos);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const TString field(__fields[i]);
|
||||
|
||||
if (__virtual[i])
|
||||
{
|
||||
if (virsel.full())
|
||||
virsel << "&&";
|
||||
if (i == 22)
|
||||
{
|
||||
if (fromval.full())
|
||||
virsel << " (" << field << "!=\"\")";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (fromval.empty())
|
||||
{
|
||||
if (i == 0 || i == 8 || i > 15)
|
||||
fromval = "0";
|
||||
else
|
||||
fromval = "\"\"";
|
||||
}
|
||||
if (toval.blank())
|
||||
select << "(" << field << ">=\"" << fromval << "\")";
|
||||
else
|
||||
virsel << "BETWEEN(" << field << ",\"" << fromval << "\",\"" << toval << "\")";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (select.full())
|
||||
select << "&&";
|
||||
if (fromval.empty())
|
||||
{
|
||||
if (i == 0 || i == 8 || i > 15)
|
||||
fromval = "0";
|
||||
else
|
||||
fromval = "\"\"";
|
||||
}
|
||||
if (i == 0 || i == 8 || i > 15)
|
||||
{
|
||||
if (toval.blank())
|
||||
select << "(" << field << ">=" << fromval << ")";
|
||||
else
|
||||
select << "BETWEEN(" << field << "," << fromval << "," << toval << ")";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (toval.blank())
|
||||
select << "(" << field << ">=\"" << fromval << "\")";
|
||||
else
|
||||
select << "BETWEEN(" << field << ",\"" << fromval << "\",\"" << toval << "\")";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (select.full())
|
||||
select.format("(%s)", (const char *) select);
|
||||
|
||||
for (int i = 0; __macros[i]; i++)
|
||||
{
|
||||
int pos = query.find(__macros[i]);
|
||||
|
||||
while (pos >= 0)
|
||||
{
|
||||
TString wrk = query.left(pos);
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 0:
|
||||
wrk << "(" << select << ")";
|
||||
break;
|
||||
case 1:
|
||||
wrk << key;
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
wrk << m.get(F_TIPOCF);
|
||||
break;
|
||||
case 4:
|
||||
if (esercizi().exist(m.get_int(F_CODES)))
|
||||
wrk << esercizi().esercizio(m.get_int(F_CODES)).inizio().year();
|
||||
break;
|
||||
case 5:
|
||||
if (esercizi().exist(m.get_int(F_CODES_TO)))
|
||||
wrk << esercizi().esercizio(m.get_int(F_CODES_TO)).inizio().year();
|
||||
break;
|
||||
case 6:
|
||||
wrk << m.get(F_DA);
|
||||
break;
|
||||
case 7:
|
||||
wrk << m.get(F_A);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
wrk << query.mid(pos + strlen(__macros[i]));
|
||||
query = wrk;
|
||||
pos = query.find(__macros[i]);
|
||||
}
|
||||
}
|
||||
|
||||
TRepcom_recordset * recset = new TRepcom_recordset(query);
|
||||
|
||||
recset->set_es(m.get_int(F_CODES));
|
||||
recset->set_es_to(m.get_int(F_CODES_TO));
|
||||
for (int i = 0; i < nrows; i++)
|
||||
{
|
||||
TToken_string & row = s.row(i);
|
||||
TString fromval(row.get(1));
|
||||
TString toval(row.get(2));
|
||||
const TString field(row.get(3));
|
||||
TString from("#DA_"); from << field;
|
||||
TString to("#A_"); to << field;
|
||||
|
||||
recset->set_var(from, TVariant(fromval));
|
||||
recset->set_var(to, TVariant(toval));
|
||||
}
|
||||
recset->set_virtual(virsel);
|
||||
rep.set_recordset(((TDocument_recordset *)recset));
|
||||
}
|
||||
|
||||
class TRepcom_mask : public TVariable_automask
|
||||
|
||||
{
|
||||
private:
|
||||
|
||||
protected:
|
||||
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
||||
static TMask* getmask(int numriga, TMask& fullmask);
|
||||
|
||||
public:
|
||||
TRepcom_mask() : TVariable_automask("ba9b00a") { sfield(F_SHEET).set_append(false); ((TVariable_sheet_field &) sfield(F_SHEET)).set_getmask(getmask); }
|
||||
};
|
||||
|
||||
TMask* TRepcom_mask::getmask(int numriga, TMask& fullmask)
|
||||
{
|
||||
TSheet_field* sf = fullmask.get_sheet();
|
||||
TRepcom_mask & m = (TRepcom_mask &)sf->mask();
|
||||
static TArray __masks;
|
||||
TMask * mask = (TMask *)__masks.objptr(numriga);
|
||||
|
||||
if (mask == NULL)
|
||||
{
|
||||
TFilename mask_name("ba9b00a");
|
||||
|
||||
mask_name = mask_name << format("%02d", numriga + 1);
|
||||
__masks.add(mask = new TMask(mask_name), numriga);
|
||||
}
|
||||
return mask;
|
||||
}
|
||||
|
||||
bool TRepcom_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
switch (o.dlg())
|
||||
{
|
||||
case F_TIPOCF:
|
||||
if (e == fe_init || e == fe_modify)
|
||||
{
|
||||
const TString4 tipo = o.get();
|
||||
TSheet_field & s = o.mask().sfield(F_SHEET);
|
||||
const int nrows = s.items();
|
||||
|
||||
for (int i = 0; i < nrows; i++)
|
||||
{
|
||||
TToken_string & row = s.row(i);
|
||||
|
||||
row.add(tipo, s.cid2index(S_TIPOCF));
|
||||
}
|
||||
s.force_update();
|
||||
}
|
||||
case F_CODES:
|
||||
if (e == fe_init || e == fe_modify)
|
||||
{
|
||||
bool active = o.get().full();
|
||||
TSheet_field & s = sfield(F_SHEET);
|
||||
|
||||
for (int i = 0; __fields[i]; i++)
|
||||
{
|
||||
if (__need_es[i])
|
||||
{
|
||||
if (!active)
|
||||
{
|
||||
TToken_string & row = s.row(i);
|
||||
|
||||
row.add("", 1);
|
||||
row.add("", 2);
|
||||
}
|
||||
s.enable_row(i, active);
|
||||
if (i == 22)
|
||||
s.disable_cell(i, s.cid2index(S_A));
|
||||
}
|
||||
}
|
||||
s.force_update();
|
||||
}
|
||||
break;
|
||||
case F_SHEET:
|
||||
if (e == se_query_add)
|
||||
return false;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void TReporting_clienti_fornitori::main_loop()
|
||||
{
|
||||
bool repcom = false;
|
||||
// Costruisce il nome del report in base alla riga di comando
|
||||
TFilename rep;
|
||||
|
||||
if (argc() > 2)
|
||||
rep = argv(2);
|
||||
|
||||
TDocument_report r;
|
||||
bool ok = true;
|
||||
TRepcom_mask m;
|
||||
TSheet_field & s = m.sfield(F_SHEET);
|
||||
|
||||
for (int i = 0; __fields[i]; i++)
|
||||
{
|
||||
TToken_string & row = s.row(i);
|
||||
|
||||
row.add(__field_descrs[i], 0);
|
||||
row.add("", 1);
|
||||
row.add("", 2);
|
||||
row.add(__fields[i], 3);
|
||||
row.add("", 4);
|
||||
}
|
||||
if (rep.full())
|
||||
{
|
||||
m.set(F_REPORT, rep);
|
||||
m.disable(F_REPORT);
|
||||
}
|
||||
|
||||
while ((m.run() == K_ENTER))
|
||||
{
|
||||
if (r.load(m.get(F_REPORT))) // Controlla l'effettiva esistenza del report
|
||||
{
|
||||
update_recset(r, m);
|
||||
|
||||
TReport_book b;
|
||||
|
||||
b.add(r); // Richiede parametri di stampa in base alla maschera omonima
|
||||
|
||||
if (b.pages() > 0)
|
||||
b.print_or_preview(); // Stampa effettivamente
|
||||
else
|
||||
warning_box (TR("Nessun record estratto per i parametri inseriti"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int ba9200(int argc, char* argv[])
|
||||
{
|
||||
TReporting_clienti_fornitori app;
|
||||
app.run(argc, argv, TR("Report Clienti Fornitori"));
|
||||
return 0;
|
||||
}
|
||||
|
15
src/ba/ba9b00.h
Normal file
15
src/ba/ba9b00.h
Normal file
@ -0,0 +1,15 @@
|
||||
#define S_DESCR 101
|
||||
#define S_DA 102
|
||||
#define S_A 103
|
||||
#define S_FIELD 104
|
||||
#define S_TIPOCF 105
|
||||
|
||||
#define F_KEY 201
|
||||
#define F_TIPOCF 202
|
||||
#define F_CODES 203
|
||||
#define F_SHEET 204
|
||||
#define F_CODES_TO 205
|
||||
#define F_DA 206
|
||||
#define F_A 207
|
||||
|
||||
#define F_REPORT 301
|
143
src/ba/ba9b00a.uml
Normal file
143
src/ba/ba9b00a.uml
Normal file
@ -0,0 +1,143 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <printbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
TOOLBAR "bottombar" 0 -2 0 1
|
||||
|
||||
STRING F_REPORT 256 64
|
||||
BEGIN
|
||||
PROMPT 2 -2 "Report "
|
||||
RSELECT "repcom"
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING DLG_PROFILE 50
|
||||
BEGIN
|
||||
PROMPT 2 -1 "Profilo "
|
||||
PSELECT
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Report Clienti Fornitori" 0 2 0 0
|
||||
|
||||
LISTBOX F_KEY 50
|
||||
BEGIN
|
||||
PROMPT 1 1 "Chiave "
|
||||
ITEM "1|Codice (TIPOCF CODCF)"
|
||||
ITEM "2|Ragione sociale (TIPOCF RAGSOC)"
|
||||
ITEM "3|Conto (TIPOCF GRUPPO CONTO CODCF)"
|
||||
ITEM "4|Codice fiscale (TIPOCF COFI)"
|
||||
ITEM "5|Partita IVA (TIPOCF STATOPAIV PAIV"
|
||||
ITEM "6|Ricerca alternativa (TIPOCF+RICALT)"
|
||||
END
|
||||
|
||||
LISTBOX F_TIPOCF 10
|
||||
BEGIN
|
||||
PROMPT 1 3 "Tipo "
|
||||
ITEM "C|Clienti"
|
||||
ITEM "F|Fornitori"
|
||||
MESSAGE COPY,S_TIPOCF
|
||||
END
|
||||
|
||||
NUMBER F_CODES 4
|
||||
BEGIN
|
||||
PROMPT 21 3 "Esercizio Da"
|
||||
USE ESC
|
||||
INPUT CODTAB F_CODES
|
||||
DISPLAY "Codice Esercizio" CODTAB
|
||||
DISPLAY "Data inizio esercizio" D0
|
||||
DISPLAY "Data fine esercizio " D1
|
||||
OUTPUT F_CODES CODTAB
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
NUMBER F_CODES_TO 4
|
||||
BEGIN
|
||||
PROMPT 55 3 "A "
|
||||
USE ESC
|
||||
INPUT CODTAB F_CODES_TO
|
||||
DISPLAY "Codice Esercizio" CODTAB
|
||||
DISPLAY "Data inizio esercizio" D0
|
||||
DISPLAY "Data fine esercizio " D1
|
||||
OUTPUT F_CODES_TO CODTAB
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
DATE F_DA
|
||||
BEGIN
|
||||
PROMPT 32 4 "Dal"
|
||||
END
|
||||
|
||||
DATE F_A
|
||||
BEGIN
|
||||
PROMPT 55 4 "Al "
|
||||
END
|
||||
|
||||
SPREADSHEET F_SHEET 0 -3
|
||||
BEGIN
|
||||
PROMPT 15 6 "Selezione"
|
||||
ITEM "Campo@25"
|
||||
ITEM "Da@50"
|
||||
ITEM "A@50"
|
||||
ITEM "Nome campo@25"
|
||||
ITEM "Tipo"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
PAGE "Riga Selezione" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 50
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
STRING S_A 50
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
LISTBOX S_TIPOCF 9
|
||||
BEGIN
|
||||
PROMPT 2 10 ""
|
||||
FLAGS "HGD"
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
EN
|
||||
|
||||
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
|
59
src/ba/ba9b00a01.uml
Normal file
59
src/ba/ba9b00a01.uml
Normal file
@ -0,0 +1,59 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione cliente/fornitore" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_DA 6
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
USE LF_CLIFO
|
||||
INPUT TIPOCF S_TIPOCF SELECT
|
||||
INPUT CODCF S_DA
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
DISPLAY "Partita IVA@11" PAIV
|
||||
OUTPUT S_DA CODCF
|
||||
FLAGS "Z"
|
||||
END
|
||||
|
||||
NUMBER S_A 6
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT TIPOCF S_TIPOCF SELECT
|
||||
INPUT CODCF S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODCF
|
||||
NUM_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
FLAGS "Z"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
LISTBOX S_TIPOCF 9
|
||||
BEGIN
|
||||
PROMPT 2 12 ""
|
||||
FLAGS "HGD"
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
END
|
||||
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
57
src/ba/ba9b00a02.uml
Normal file
57
src/ba/ba9b00a02.uml
Normal file
@ -0,0 +1,57 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione cliente/fornitore" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRRING S_DA 50
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
USE LF_CLIFO KEY 2
|
||||
INPUT TIPOCF S_TIPOCF SELECT
|
||||
INPUT RAGSOC S_DA
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Partita IVA@11" PAIV
|
||||
OUTPUT S_DA RAGSOC
|
||||
END
|
||||
|
||||
STRING S_A 50
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT TIPOCF S_TIPOCF SELECT
|
||||
INPUT RAGSOC S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A RAGSOC
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
LISTBOX S_TIPOCF 9
|
||||
BEGIN
|
||||
PROMPT 2 12 ""
|
||||
FLAGS "HGD"
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
END
|
||||
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
38
src/ba/ba9b00a03.uml
Normal file
38
src/ba/ba9b00a03.uml
Normal file
@ -0,0 +1,38 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione CAP" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 5
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
FLAGS "Z"
|
||||
END
|
||||
|
||||
STRING S_A 5
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
FLAGS "Z"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
47
src/ba/ba9b00a04.uml
Normal file
47
src/ba/ba9b00a04.uml
Normal file
@ -0,0 +1,47 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Agente" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 5
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
FLAGS "UZ"
|
||||
USE LF_AGENTI
|
||||
INPUT CODAGE S_DA
|
||||
DISPLAY "Codice@8R" CODAGE
|
||||
DISPLAY "Descrizione@70" RAGSOC
|
||||
OUTPUT S_DA CODAGE
|
||||
END
|
||||
|
||||
STRING S_A 5
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
FLAGS "UZ"
|
||||
COPY USE S_DA
|
||||
INPUT CODAGE S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODAGE
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
45
src/ba/ba9b00a05.uml
Normal file
45
src/ba/ba9b00a05.uml
Normal file
@ -0,0 +1,45 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Zona" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 2
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
USE ZON
|
||||
INPUT CODTAB S_DA
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT S_DA CODTAB
|
||||
END
|
||||
|
||||
STRING S_A 2
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT CODTAB S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODTAB
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
47
src/ba/ba9b00a06.uml
Normal file
47
src/ba/ba9b00a06.uml
Normal file
@ -0,0 +1,47 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Agente" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 5
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
FLAGS "UZ"
|
||||
USE LF_AGENTI
|
||||
INPUT CODAGE S_DA
|
||||
DISPLAY "Codice@8R" CODAGE
|
||||
DISPLAY "Descrizione@70" RAGSOC
|
||||
OUTPUT S_DA CODAGE
|
||||
END
|
||||
|
||||
STRING S_A 5
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
FLAGS "UZ"
|
||||
COPY USE S_DA
|
||||
INPUT CODAGE S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODAGE
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
49
src/ba/ba9b00a07.uml
Normal file
49
src/ba/ba9b00a07.uml
Normal file
@ -0,0 +1,49 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Listino" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 3
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
FLAGS "U"
|
||||
USE LF_CONDV
|
||||
INPUT TIPO "L"
|
||||
INPUT CATVEN ""
|
||||
INPUT COD S_DA
|
||||
DISPLAY "Codice" COD
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT S_DA COD
|
||||
END
|
||||
|
||||
STRING S_A 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT TIPO "L"
|
||||
INPUT CATVEN ""
|
||||
INPUT COD S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A COD
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
ENDMASK
|
36
src/ba/ba9b00a08.uml
Normal file
36
src/ba/ba9b00a08.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Sconto" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 25
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
STRING S_A 25
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a09.uml
Normal file
36
src/ba/ba9b00a09.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Fido" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
CURRENCY S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
CURRENCY S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
NUM_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
48
src/ba/ba9b00a10.uml
Normal file
48
src/ba/ba9b00a10.uml
Normal file
@ -0,0 +1,48 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Pagamento" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 4
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
FLAGS "U#"
|
||||
USE %CPG
|
||||
INPUT CODTAB S_DA
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT S_DA CODTAB
|
||||
MESSAGE COPY,S_A
|
||||
END
|
||||
|
||||
STRING S_A 4
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT CODTAB S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODTAB
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
FLAGS "U#"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
48
src/ba/ba9b00a11.uml
Normal file
48
src/ba/ba9b00a11.uml
Normal file
@ -0,0 +1,48 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Magazzino" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 3
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
USE MAG SELECT CODTAB[4,5]==""
|
||||
INPUT CODTAB[1,3] S_DA
|
||||
DISPLAY "Cod. magazzino" CODTAB[1,3]
|
||||
DISPLAY "Cod. deposito" CODTAB[4,5]
|
||||
DISPLAY "Denominazione dep.@50" S0
|
||||
OUTPUT S_DA CODTAB[1,3]
|
||||
FLAGS "UPA"
|
||||
END
|
||||
|
||||
STRING S_A 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT CODTAB[1,3] S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODTAB[1,3]
|
||||
FLAGS "UPA"
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
48
src/ba/ba9b00a12.uml
Normal file
48
src/ba/ba9b00a12.uml
Normal file
@ -0,0 +1,48 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Deposito" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 2
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
USE MAG SELECT CODTAB[4,5]!=""
|
||||
INPUT CODTAB[4,5] S_DA
|
||||
DISPLAY "Cod. magazzino" CODTAB[1,3]
|
||||
DISPLAY "Cod. deposito" CODTAB[4,5]
|
||||
DISPLAY "Denominazione dep.@50" S0
|
||||
OUTPUT S_DA CODTAB[4,5]
|
||||
FLAGS "UPA"
|
||||
END
|
||||
|
||||
STRING S_A 2
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT CODTAB[4,5] S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODTAB[4,5]
|
||||
FLAGS "UPA"
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a13.uml
Normal file
36
src/ba/ba9b00a13.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Data esenzione" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
DATE S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
47
src/ba/ba9b00a14.uml
Normal file
47
src/ba/ba9b00a14.uml
Normal file
@ -0,0 +1,47 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Porto" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 3
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
FLAGS "U"
|
||||
USE %POR
|
||||
INPUT CODTAB S_DA
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Porto@50" S0
|
||||
OUTPUT S_DA CODTAB
|
||||
END
|
||||
|
||||
STRING S_A 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT CODTAB S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODTAB
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
45
src/ba/ba9b00a15.uml
Normal file
45
src/ba/ba9b00a15.uml
Normal file
@ -0,0 +1,45 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione spedizione" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 3
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
USE %MSP
|
||||
INPUT CODTAB S_DA
|
||||
DISPLAY "Codice modalita'" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT S_DA CODTAB
|
||||
END
|
||||
|
||||
STRING S_A 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT CODTAB S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODTAB
|
||||
NUM_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
47
src/ba/ba9b00a16.uml
Normal file
47
src/ba/ba9b00a16.uml
Normal file
@ -0,0 +1,47 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione categoria economica" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 3
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
FLAGS "U"
|
||||
USE CVE
|
||||
INPUT CODTAB S_DA
|
||||
DISPLAY "Codice vendita" CODTAB
|
||||
DISPLAY "Descrizione@30" S0
|
||||
OUTPUT S_DA CODTAB
|
||||
END
|
||||
|
||||
STRING S_A 3
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
COPY USE S_DA
|
||||
INPUT CODTAB S_A
|
||||
COPY DISPLAY S_DA
|
||||
OUTPUT S_A CODTAB
|
||||
NUM_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
FLAGS "U"
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiroe"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a17.uml
Normal file
36
src/ba/ba9b00a17.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Ultima Fattura" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
DATE S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
37
src/ba/ba9b00a18.uml
Normal file
37
src/ba/ba9b00a18.uml
Normal file
@ -0,0 +1,37 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Fatturato netto" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
CURRENCY S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
CURRENCY S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a19.uml
Normal file
36
src/ba/ba9b00a19.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Fatturato lordo" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
CURRENCY S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
CURRENCY S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a20.uml
Normal file
36
src/ba/ba9b00a20.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Dare" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
CURRENCY S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
CURRENCY S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a21.uml
Normal file
36
src/ba/ba9b00a21.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Avere" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
CURRENCY S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
CURRENCY S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a22.uml
Normal file
36
src/ba/ba9b00a22.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Scaduto" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
CURRENCY S_DA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Da "
|
||||
END
|
||||
|
||||
CURRENCY S_A
|
||||
BEGIN
|
||||
PROMPT 2 6 "A "
|
||||
STR_EXPR (#S_A=="")||(#S_A>=#S_DA)
|
||||
WARNING "Il limite superiore deve essere maggiore di quello inferiore"
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
36
src/ba/ba9b00a23.uml
Normal file
36
src/ba/ba9b00a23.uml
Normal file
@ -0,0 +1,36 @@
|
||||
#include "ba9b00.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Riga Selezione Movimentato" -1 -1 78 19
|
||||
|
||||
STRING S_DESCR 25
|
||||
BEGIN
|
||||
PROMPT 2 2 "Campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DA 1
|
||||
BEGIN
|
||||
PROMPT 2 4 "Movimentato "
|
||||
MESSAGE COPY, S_A
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
STRING S_A 1
|
||||
BEGIN
|
||||
PROMPT 100 100 "A "
|
||||
END
|
||||
|
||||
STRING S_FIELD 25
|
||||
BEGIN
|
||||
PROMPT 2 8 "Nome campo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
@ -99,7 +99,8 @@ Flags = ""
|
||||
Item_01 = "Generatore query", "ba8 -1", "S"
|
||||
Item_02 = "Generatore report", "ba8 -2", "S", 10217
|
||||
Item_03 = "Convertitore da form a report", "ba8 -3", ""
|
||||
Item_04 = "Ricerca file archiviati", "ba8 -5", ""
|
||||
Item_04 = "Report clienti e fornitori", "ba9 -1", "F"
|
||||
Item_05 = "Ricerca file archiviati", "ba8 -5", ""
|
||||
|
||||
[MENU_015]
|
||||
Caption = "Manutenzione"
|
||||
|
90
src/ba/barc00001.rep
Normal file
90
src/ba/barc00001.rep
Normal file
@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<report name="barc00001" orientation="2" lpi="6" class="repcom">
|
||||
<description>Fatturato e situazione contabile</description>
|
||||
<font face="Courier New" size="7" />
|
||||
<section type="Head" pattern="1">
|
||||
<field x="184" type="Stringa" width="10" pattern="1">
|
||||
<prescript description="H0.0 PRESCRIPT">MESSAGE _PAGENO</prescript>
|
||||
</field>
|
||||
<field x="179" y="0.25" type="Testo" width="5" pattern="1" text="Pag." />
|
||||
<field y="2" type="Testo" align="right" width="6" pattern="1" text="Codice" />
|
||||
<field x="7" y="2" type="Testo" width="25" pattern="1" text="Regione Sociale" />
|
||||
<field x="33" y="2" type="Testo" width="5" pattern="1" text="CAP" />
|
||||
<field x="39" y="2" type="Testo" align="right" width="5" pattern="1" text="Banca" />
|
||||
<field x="45" y="2" type="Testo" align="right" width="5" pattern="1" text="Agenz." />
|
||||
<field x="51" y="2" type="Testo" width="4" pattern="1" text="Pag." />
|
||||
<field x="56" y="2" type="Testo" width="5" pattern="1" text="Ag1" />
|
||||
<field x="62" y="2" type="Testo" width="2" pattern="1" text="Zona" />
|
||||
<field x="65" y="2" type="Testo" width="4" pattern="1" text="Ins." />
|
||||
<field x="69.5" y="2" type="Testo" width="5" pattern="1" text="Lis." />
|
||||
<field x="75" y="2" type="Testo" width="25" pattern="1" text="Sconto" />
|
||||
<field x="101" y="2" type="Testo" align="right" width="15" pattern="1" text="Fido" />
|
||||
<field x="117" y="2" type="Testo" align="right" width="15" pattern="1" text="Dare" />
|
||||
<field x="133" y="2" type="Testo" align="right" width="15" pattern="1" text="Avere" />
|
||||
<field x="148.5" y="2" type="Testo" align="right" width="15" pattern="1" text="Imponibile" />
|
||||
<field x="164" y="2" type="Testo" align="right" width="15" pattern="1" text="Fatturato" />
|
||||
<field x="180" y="2" type="Testo" align="right" width="15" pattern="1" text="Scaduto " />
|
||||
<field border="2" y="3" type="Linea" width="194" height="0" pattern="1" />
|
||||
</section>
|
||||
<section type="Head" level="1" pattern="1" />
|
||||
<section type="Body" pattern="1" />
|
||||
<section type="Body" level="1" pattern="1">
|
||||
<field type="Numero" align="right" width="6" pattern="1">
|
||||
<source>CLIFO.CODCF</source>
|
||||
</field>
|
||||
<field x="7" type="Stringa" dynamic_height="1" width="25" height="2" pattern="1">
|
||||
<source>CLIFO.RAGSOC</source>
|
||||
</field>
|
||||
<field x="33" type="Stringa" width="5" pattern="1">
|
||||
<source>CLIFO.CAPCF</source>
|
||||
</field>
|
||||
<field x="39" type="Numero" width="5" pattern="1">
|
||||
<source>CLIFO.CODABI</source>
|
||||
</field>
|
||||
<field x="45" type="Numero" width="5" pattern="1">
|
||||
<source>CLIFO.CODCAB</source>
|
||||
</field>
|
||||
<field x="51" type="Stringa" width="4" pattern="1">
|
||||
<source>CLIFO.CODPAG</source>
|
||||
</field>
|
||||
<field x="56" type="Stringa" width="5" pattern="1">
|
||||
<source>CFVEN.CODAG</source>
|
||||
</field>
|
||||
<field x="62" type="Stringa" width="2" pattern="1">
|
||||
<source>CFVEN.CODZONA</source>
|
||||
</field>
|
||||
<field x="65" type="Stringa" width="4" pattern="1">
|
||||
<source>NINS</source>
|
||||
</field>
|
||||
<field x="69.5" type="Stringa" width="5" pattern="1">
|
||||
<source>CFVEN.CODLIST</source>
|
||||
</field>
|
||||
<field x="75" type="Stringa" width="25" pattern="1">
|
||||
<source>CFVEN.SCONTO</source>
|
||||
</field>
|
||||
<field x="101" type="Valuta" align="right" width="15" pattern="1" text="#########,@@">
|
||||
<source>FIDO</source>
|
||||
</field>
|
||||
<field x="117" type="Valuta" align="right" width="15" pattern="1" text="#########,@@">
|
||||
<source>DARE</source>
|
||||
</field>
|
||||
<field x="133" type="Valuta" align="right" width="15" pattern="1" text="#########,@@">
|
||||
<source>AVERE</source>
|
||||
</field>
|
||||
<field x="148.5" type="Valuta" align="right" width="15" pattern="1" text="#########,@@">
|
||||
<source>IMPFATT</source>
|
||||
</field>
|
||||
<field x="164" type="Valuta" align="right" width="15" pattern="1" text="#########,@@">
|
||||
<source>TOTFATT</source>
|
||||
</field>
|
||||
<field x="179.5" type="Valuta" align="right" width="15" pattern="1" text="#########,@@">
|
||||
<source>SCADUTO</source>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot" pattern="1" />
|
||||
<section type="Foot" level="1" pattern="1" />
|
||||
<sql>USE CLIFO KEY $KEY SELECT $REPSEL
|
||||
JOIN CFVEN INTO TIPOCF==TIPOCF CODCF==CODCF
|
||||
FROM TIPOCF='$TIPOCF'
|
||||
TO TIPOCF='$TIPOCF'</sql>
|
||||
</report>
|
39
src/ba/barc00002.rep
Normal file
39
src/ba/barc00002.rep
Normal file
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<report name="barc00002" cpi="17" orientation="2" lpi="6" class="repcom">
|
||||
<description>Etichette standard reporting commerciale</description>
|
||||
<font face="Courier New" size="7" />
|
||||
<section type="Head" pattern="1" />
|
||||
<section type="Head" level="1" pattern="1" />
|
||||
<section type="Body" pattern="1" />
|
||||
<section type="Body" level="1" width="40" height="9" pattern="1">
|
||||
<field type="Testo" width="10" pattern="1" text="Spett." />
|
||||
<field y="1" type="Stringa" width="40" height="2" pattern="1">
|
||||
<source>CLIFO.RAGSOC</source>
|
||||
</field>
|
||||
<field y="3" type="Stringa" width="40" height="2" pattern="1">
|
||||
<source>CLIFO.INDCF+", "+CLIFO.CIVCF</source>
|
||||
</field>
|
||||
<field y="5" type="Stringa" width="40" height="2" pattern="1">
|
||||
<source>CLIFO.LOCALITACF</source>
|
||||
</field>
|
||||
<field y="7" type="Stringa" width="5" pattern="1">
|
||||
<source>CLIFO.CAPCF</source>
|
||||
</field>
|
||||
<field x="6" y="7" type="Stringa" width="34" pattern="1">
|
||||
<source>COMUNI.DENCOM</source>
|
||||
</field>
|
||||
<field y="8" type="Stringa" hidden="1" width="4" id="100" pattern="1">
|
||||
<source>STATOCF</source>
|
||||
</field>
|
||||
<field x="6" y="8" type="Stringa" width="34" id="101" pattern="1">
|
||||
<prescript description="B1.101 PRESCRIPT">MESSAGE _TABLEREAD,%STA,#101,S0</prescript>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot" pattern="1" />
|
||||
<section type="Foot" level="1" pattern="1" />
|
||||
<sql>USE CLIFO KEY $KEY SELECT $REPSEL
|
||||
JOIN CFVEN INTO TIPOCF==TIPOCF CODCF==CODCF
|
||||
JOIN COMUNI INTO STATO==STATOCF COM==CODCF
|
||||
FROM TIPOCF='$TIPOCF'
|
||||
TO TIPOCF='$TIPOCF'</sql>
|
||||
</report>
|
Loading…
x
Reference in New Issue
Block a user