Patch level :2.2
Files correlati : Ricompilazione Demo : [ ] Commento :eliminati files perniciosi (sono stati rimessi in PS come db1890) git-svn-id: svn://10.65.10.50/trunk@12836 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
b52a47b78e
commit
6ba83a2a54
21
sc/scp0.cpp
21
sc/scp0.cpp
@ -1,21 +0,0 @@
|
||||
#include <xvt.h>
|
||||
#include <stdlib.h>
|
||||
#include <checks.h>
|
||||
|
||||
#include "scp0.h"
|
||||
|
||||
#define usage "Errore - uso : scp0 -{0}"
|
||||
|
||||
int main(int argc,char** argv)
|
||||
{
|
||||
const int n = (argc > 1) ? (atoi(&argv[1][1])) : 0;
|
||||
|
||||
switch(n)
|
||||
{
|
||||
case 0:
|
||||
scp0100(argc,argv); break;
|
||||
default:
|
||||
error_box(usage);
|
||||
}
|
||||
return 0;
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
#include <default.url>
|
||||
#include <mainmenu.url>
|
||||
|
||||
|
||||
|
||||
|
186
sc/scp0100.cpp
186
sc/scp0100.cpp
@ -1,186 +0,0 @@
|
||||
#include <config.h>
|
||||
#include <currency.h>
|
||||
#include <execp.h>
|
||||
#include <mask.h>
|
||||
#include <printapp.h>
|
||||
#include <progind.h>
|
||||
#include <utility.h>
|
||||
|
||||
#include "../cg/cgsaldac.h"
|
||||
#include "../cg/cglib02.h"
|
||||
#include "scp0.h"
|
||||
#include "scp0100.h"
|
||||
|
||||
#include <clifo.h>
|
||||
#include <nditte.h>
|
||||
#include <pconti.h>
|
||||
|
||||
class TPartite2Euroasis : public TSkeleton_application
|
||||
{
|
||||
TMask* _msk;
|
||||
|
||||
protected:
|
||||
virtual bool create();
|
||||
virtual bool destroy();
|
||||
virtual void main_loop();
|
||||
int calcola_esposto(const TRiga_scadenze& scad, const TDate& dataanalisi, const TDate& dataesposto,
|
||||
TDate& datascad, TImporto& esposto) const;
|
||||
|
||||
public:
|
||||
TMask& mask() { return *_msk; }
|
||||
TPartite2Euroasis() {};
|
||||
virtual ~TPartite2Euroasis() {}
|
||||
};
|
||||
|
||||
bool TPartite2Euroasis::create()
|
||||
{
|
||||
open_files(LF_SCADENZE, LF_PARTITE, LF_CLIFO, 0);
|
||||
_msk = new TMask("scp0100a");
|
||||
return TSkeleton_application::create();
|
||||
}
|
||||
|
||||
bool TPartite2Euroasis::destroy()
|
||||
{
|
||||
delete _msk;
|
||||
return TSkeleton_application::destroy();
|
||||
}
|
||||
|
||||
int TPartite2Euroasis::calcola_esposto(const TRiga_scadenze& scad, const TDate& dataanalisi, const TDate& dataesposto,
|
||||
TDate& datascad, TImporto& esposto) const
|
||||
{
|
||||
const bool rischio = dataanalisi != dataesposto;
|
||||
int tipo = scad.get_int(SCAD_TIPOPAG);
|
||||
datascad = scad.get_date(SCAD_DATASCAD);
|
||||
for (int i=scad.last(); i>0; i= scad.pred(i))
|
||||
{
|
||||
const TRiga_partite& pag = scad.partita().riga(i);
|
||||
const int tp = pag.get_int(PART_TIPOPAG);
|
||||
if (tp >= 2 && tp <= 7)
|
||||
{
|
||||
tipo = tp;
|
||||
const TDate datapag = pag.get_date(PART_DATAPAG);
|
||||
bool is_esposto = FALSE;
|
||||
if (rischio && datapag > dataesposto && datapag <= dataanalisi)
|
||||
is_esposto = TRUE;
|
||||
else
|
||||
if (datapag > dataanalisi)
|
||||
is_esposto = TRUE;
|
||||
if (is_esposto)
|
||||
{
|
||||
const char sez = pag.sezione();
|
||||
const TImporto imp(sez, scad.row(i).get_real(PAGSCA_IMPORTO));
|
||||
esposto+=imp;
|
||||
}
|
||||
if (datapag > datascad)
|
||||
datascad = datapag;
|
||||
}
|
||||
}
|
||||
return tipo;
|
||||
}
|
||||
|
||||
void TPartite2Euroasis::main_loop()
|
||||
{
|
||||
TRelation rel(LF_SCADENZE);
|
||||
rel.add(LF_PARTITE,"TIPOC==TIPOC|GRUPPO==GRUPPO|CONTO==CONTO|SOTTOCONTO==SOTTOCONTO|ANNO=ANNO|NUMPART==NUMPART",1,0);
|
||||
rel.add(LF_PAGSCA, "TIPOC==TIPOC|GRUPPO==GRUPPO|CONTO==CONTO|SOTTOCONTO==SOTTOCONTO|ANNO==ANNO|NUMPART==NUMPART|NRIGA==NRIGA|NRATA==NRATA");
|
||||
TCursor cur(&rel, "29->TIPOC == \"C\"", 2); // verificare la chiave
|
||||
TMask& m = mask();
|
||||
TConfig config("scp0100.ini");
|
||||
TString80 exe = config.get("EXE");
|
||||
m.set(F_PATH, config.get("PATH"));
|
||||
while (m.run() != K_QUIT)
|
||||
{
|
||||
const TString& path = m.get(F_PATH);
|
||||
config.set("PATH", path);
|
||||
TFilename scadname = path;
|
||||
scadname.ext("dbf");
|
||||
TFilename scadtrr = "oasis.trr";
|
||||
scadtrr.custom_path();
|
||||
TExternisamfile filescad(scadname, scadtrr);
|
||||
filescad.zap();
|
||||
const TDate oggi(TODAY);
|
||||
TString16 ora;
|
||||
time_t tempo;
|
||||
time(&tempo);
|
||||
const struct tm* d = localtime(&tempo);
|
||||
ora.format("%02d:%02d:%02d", d->tm_hour, d->tm_min, d->tm_sec);
|
||||
const TDate dataanalisi = m.get_date(F_DATA);
|
||||
const int giorni = m.get_int(F_GIORNI);
|
||||
const TDate dataesposto = dataanalisi - (long) giorni;
|
||||
TRectype& recscad = cur.curr();
|
||||
const TRectype& recpartita = cur.curr(LF_PARTITE);
|
||||
const long items = cur.items();
|
||||
TProgind p(items, "Elaborazione scadenze in corso ...", TRUE, TRUE, 10);
|
||||
p.setstatus(1);
|
||||
int err = NOERR;
|
||||
|
||||
for (cur=0; cur.pos()<items && !p.iscancelled() && err==NOERR; ++(cur))
|
||||
{
|
||||
p.addstatus(1);
|
||||
const int nriga = recscad.get_int(SCAD_NRIGA);
|
||||
const int nrata = recscad.get_int(SCAD_NRATA);
|
||||
|
||||
const long codcli = recscad.get_long(SCAD_SOTTOCONTO);
|
||||
if (codcli == 11062)
|
||||
{
|
||||
int i = 0;
|
||||
i++;
|
||||
}
|
||||
|
||||
TPartita partita(recpartita);
|
||||
const TRiga_scadenze& scad = partita.rata(nriga, nrata);
|
||||
const TRiga_partite& rigapartite = scad.riga();
|
||||
TDate datascad = scad.get(SCAD_DATASCAD);
|
||||
TImporto esposto;
|
||||
const int tipop = calcola_esposto(scad, dataanalisi, dataesposto, datascad, esposto);
|
||||
if (!scad.chiusa() || !esposto.is_zero())
|
||||
{
|
||||
TImporto importo = scad.residuo(FALSE);
|
||||
importo.normalize('D');
|
||||
filescad.zero();
|
||||
filescad.put("DATAGEN", oggi);
|
||||
filescad.put("ORAGEN", ora);
|
||||
filescad.put("GIORNI", giorni);
|
||||
filescad.put("DATA", dataanalisi);
|
||||
filescad.put("CLIENTE", recscad.get(SCAD_SOTTOCONTO));
|
||||
TString16 tipodoc = " ";
|
||||
if (rigapartite.is_fattura())
|
||||
tipodoc = "FV";
|
||||
else if (rigapartite.is_nota_credito())
|
||||
tipodoc = "NC";
|
||||
filescad.put("TIPODOC", tipodoc);
|
||||
filescad.put("NUMDOC", recpartita.get(PART_NUMDOC));
|
||||
TString16 strpartita = recpartita.get(PART_ANNO);
|
||||
strpartita << "/";
|
||||
strpartita << recpartita.get(PART_NUMPART);
|
||||
filescad.put("PARTITA", strpartita);
|
||||
if (tipop >= 2 && tipop <= 7)
|
||||
filescad.put("TIPOPAG", "RB");
|
||||
else
|
||||
filescad.put("TIPOPAG", "RD");
|
||||
filescad.put("DATASCAD", datascad);
|
||||
filescad.put("IMPORTO", importo.valore());
|
||||
filescad.put("ESPOSTO", esposto.valore());
|
||||
err = filescad.write();
|
||||
}
|
||||
}
|
||||
|
||||
if (err == NOERR)
|
||||
{
|
||||
if (exe.not_empty())
|
||||
{
|
||||
TExternal_app oasis(exe);
|
||||
if (oasis.can_run())
|
||||
oasis.run();
|
||||
}
|
||||
}
|
||||
else
|
||||
error_box("Errore %d in scrittura file dbf. Elaborazione non terminata.", err);
|
||||
}
|
||||
}
|
||||
int scp0100(int argc, char** argv)
|
||||
{
|
||||
TPartite2Euroasis app;
|
||||
app.run(argc, argv, "Esportazione scadenzario");
|
||||
return 0;
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
#define F_CODDITTA 101
|
||||
#define F_RAGSOC 102
|
||||
#define F_DATA 103
|
||||
#define F_GIORNI 106
|
||||
#define F_PATH 107
|
||||
|
@ -1,63 +0,0 @@
|
||||
#include "scp0100.h"
|
||||
|
||||
PAGE "Esportazione scadenzario" -1 -1 78 20
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
BEGIN
|
||||
PROMPT 1 0 "@bDitta"
|
||||
END
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 2 1 "Codice "
|
||||
FLAGS "DFR"
|
||||
USE LF_NDITTE
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 17 1 "Rag.Soc. "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 6
|
||||
BEGIN
|
||||
PROMPT 1 3 "@bParametri"
|
||||
END
|
||||
|
||||
|
||||
DATE F_DATA
|
||||
BEGIN
|
||||
PROMPT 2 4 "Data per calcolo rischio "
|
||||
HELP "Data per calcolo esposto"
|
||||
CHECKTYPE REQUIRED
|
||||
WARNING "Data obbligatoria"
|
||||
END
|
||||
|
||||
NUMBER F_GIORNI 3
|
||||
BEGIN
|
||||
PROMPT 2 5 "Giorni per calcolo rischio "
|
||||
HELP "Inserire il numero di giorni per il calcolo del rischio"
|
||||
END
|
||||
|
||||
STRING F_PATH 60 40
|
||||
BEGIN
|
||||
PROMPT 2 7 "Nome del file dbf da creare "
|
||||
END
|
||||
|
||||
|
||||
BUTTON DLG_OK 10 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 10 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
ENDMASK
|
Loading…
x
Reference in New Issue
Block a user