Patch level : OMASA

Files correlati     : cgp4.exe cgp4100a.msk cgp4100b.msk cgp4100c.msk
Ricompilazione Demo : [ ]
Commento            : aggiunto: conversione commesse, sheet di riepilogo conversione conti e commesse


git-svn-id: svn://10.65.10.50/trunk@12129 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2004-06-01 13:11:20 +00:00
parent 3ffd1a4a2e
commit 5ded7ebabd
6 changed files with 268 additions and 7 deletions

View File

@ -13,6 +13,7 @@
#include "cgp4.h"
#include "cgp4100a.h"
#include "cgp4100b.h"
#include "cgp4100C.h"
#include "cglib01.h"
#include <causali.h>
@ -152,6 +153,8 @@ public:
virtual bool create();
virtual bool destroy();
virtual void main_loop();
virtual void ini2mask();
virtual void mask2ini();
bool transfer();
TOmasa() {}
@ -184,14 +187,76 @@ bool TOmasa::destroy()
return TApplication::destroy();
}
void TOmasa::mask2ini()
{
TSheet_field& sheet = (TSheet_field&)_msk->field(F_SHEET_CONTI);
for (int i=0;i<sheet.items();i++)
{
TToken_string& row = sheet.row(i);
TString16 contoomasa = row.get(0);
TString16 conto;
const int gr = atoi(row.get(1));
const int co = atoi(row.get(2));
const long so = atol(row.get(3));
conto.format("%d|%d|%ld", gr, co, so);
_configfile->set(contoomasa, conto, "CONTI");
}
TSheet_field& sheetcms = (TSheet_field&)_msk->field(F_SHEET_CMS);
for (i=0;i<sheetcms.items();i++)
{
TToken_string& row = sheetcms.row(i);
TString16 cmsomasa = row.get(0);
TString80 cms = row.get(1);
_configfile->set(cmsomasa, cms, "COMMESSE");
}
_configfile->set_paragraph("CONTI");
}
void TOmasa::ini2mask()
{
TString_array vl;
_configfile->list_variables(vl,TRUE, "CONTI", TRUE);
TSheet_field& sheet = (TSheet_field&)_msk->field(F_SHEET_CONTI);
sheet.destroy();
int i=0;
FOR_EACH_ARRAY_ROW(vl,r,s)
{
TToken_string& riga = sheet.row(i);
TString16 contoomasa = (*s).get();
TToken_string conto = _configfile->get(contoomasa, "CONTI");
riga.add(contoomasa);
riga.add(conto.get(0));
riga.add(conto.get(1));
riga.add(conto.get(2));
sheet.check_row(i);
i++;
}
_configfile->list_variables(vl,TRUE, "COMMESSE", TRUE);
TSheet_field& sheetcms = (TSheet_field&)_msk->field(F_SHEET_CMS);
sheetcms.destroy();
i=0;
FOR_EACH_ARRAY_ROW(vl,rc,sc)
{
TToken_string& riga = sheetcms.row(i);
TString16 cmsomasa = (*sc).get();
TString80 cms = (*sc).get();
riga.add(cmsomasa);
riga.add(cms);
sheetcms.check_row(i);
i++;
}
}
void TOmasa::main_loop()
{
KEY tasto;
_msk->set(F_PERCORSO, _configfile->get("PERCORSO", "MAIN"));
_msk->set(F_CODCAUS, _configfile->get("CODCAUS", "MOVIMENTO"));
ini2mask();
tasto = _msk->run();
if (tasto == K_ENTER)
{
mask2ini();
_numreg = 0;
if (transfer())
{
@ -234,9 +299,18 @@ bool TOmasa::transfer()
TString16 contoavere = curr.get(F_CONTOAVERE);
if ((!real::is_null(impstr)) && (!contodare.blank() || !contoavere.blank()))
{
TString16 codcms = curr.get(F_CENTROCOSTO);
codcms.trim();
TString80 cms = _configfile->get(codcms, "COMMESSE");
if (cms.empty())
{
TMask mskcms("cgp4100c");
mskcms.set(F_CMSOMASA, codcms);
if (mskcms.run() == K_ENTER)
_configfile->set(codcms, mskcms.get(F_CODCMS), "COMMESSE");
else
return TRUE;
}
TFilename name;
name.tempdir();
name.add(format("oo%s", (const char*) codcms));
@ -340,7 +414,7 @@ bool TOmasa::transfer()
movpn->set("IMPORTO", importos);
const char indbil = cache().get(LF_PCON, conto, PCN_INDBIL)[0];
if ((indbil != '1') && (indbil != '2'))
movpn->set("CODCMS", codcms);
movpn->set("CODCMS", _configfile->get(codcms, "COMMESSE"));
movpn->set("GRUPPO", conto.get(0));
movpn->set("CONTO", conto.get(1));
movpn->set("SOTTOCONTO", conto.get(2));

View File

@ -5,6 +5,7 @@
#define F_CODCAUS 103
#define F_DESCR 104
#define F_SHEET_CONTI 105
#define F_SHEET_CMS 106
// campi della maschera di conversione conti
#define F_S_CONTOOMASA 101
@ -13,6 +14,11 @@
#define F_S_SOTTOCONTO 104
#define F_S_DESCRIZIONE 105
// campi della maschera di conversione commesse
#define F_S_CMSOMASA 101
#define F_S_CODCMS 102
#define F_S_DESCRCMS 103
// campi del tracciato record
#define F_CODAZIENDA 0

View File

@ -58,7 +58,131 @@ BEGIN
CHECKTYPE SEARCH
END
SPREADSHEET F_SHEET_CONTI 70 6
BEGIN
PROMPT 2 6 "Tabella conversione conti"
ITEM "Conto OMASA"
ITEM "Gruppo"
ITEM "Conto"
ITEM "Sottoc."
ITEM "Descrizione"
END
SPREADSHEET F_SHEET_CMS 70 6
BEGIN
PROMPT 2 14 "Tabella conversione commesse"
ITEM "Cms OMASA"
ITEM "Corrispondente"
ITEM "Descrizione"
END
ENDPAGE
ENDMASK
PAGE "Conversione conti" 0 -1 0 10
STRING F_S_CONTOOMASA 14
BEGIN
PROMPT 2 2 "Conto OMASA "
FLAGS "D"
END
NUMBER F_S_GRUPPO 3
BEGIN
PROMPT 2 4 "Conto corrispon."
USE LF_PCON KEY 1 SELECT (CONTO="")
INPUT GRUPPO F_S_GRUPPO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Descrizione@50" DESCR
OUTPUT F_S_GRUPPO GRUPPO
CHECKTYPE NORMAL
END
NUMBER F_S_CONTO 3
BEGIN
PROMPT 24 4 ""
USE LF_PCON KEY 1 SELECT (SOTTOCONTO="")
INPUT GRUPPO F_S_GRUPPO
INPUT CONTO F_S_CONTO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
DISPLAY "Descrizione@50" DESCR
OUTPUT F_S_CONTO CONTO
OUTPUT F_S_GRUPPO GRUPPO
CHECKTYPE NORMAL
END
NUMBER F_S_SOTTOCONTO 6
BEGIN
PROMPT 30 4 ""
USE LF_PCON
INPUT GRUPPO F_S_GRUPPO
INPUT CONTO F_S_CONTO
INPUT SOTTOCONTO F_S_SOTTOCONTO
DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
DISPLAY "Sottoconto" SOTTOCONTO
DISPLAY "Descrizione@50" DESCR
OUTPUT F_S_SOTTOCONTO SOTTOCONTO
OUTPUT F_S_GRUPPO GRUPPO
OUTPUT F_S_CONTO CONTO
OUTPUT F_S_DESCRIZIONE DESCR
CHECKTYPE NORMAL
END
STRING F_S_DESCRIZIONE 50
BEGIN
PROMPT 39 4 ""
USE LF_PCON KEY 2
INPUT DESCR F_S_DESCRIZIONE
DISPLAY "Descrizione@50" DESCR
DISPLAY "Gruppo" GRUPPO
DISPLAY "Conto" CONTO
DISPLAY "Sottoconto" SOTTOCONTO
OUTPUT F_S_SOTTOCONTO SOTTOCONTO
OUTPUT F_S_CONTO CONTO
OUTPUT F_S_GRUPPO GRUPPO
OUTPUT F_S_DESCRIZIONE DESCR
CHECKTYPE NORMAL
END
ENDPAGE
ENDMASK
PAGE "Conversione commesse" 0 -1 0 10
STRING F_S_CMSOMASA 14
BEGIN
PROMPT 2 2 "Commessa OMASA "
FLAGS "D"
END
STRING F_S_CODCMS 20
BEGIN
PROMPT 2 4 "Commessa corrispondente "
FLAGS "UZ"
USE CMS
INPUT CODTAB F_S_CODCMS
DISPLAY "Codice@20" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_S_CODCMS CODTAB
OUTPUT F_S_DESCRCMS S0
CHECKTYPE NORMAL
END
STRING F_S_DESCRCMS 50
BEGIN
PROMPT 39 4 ""
USE CMS KEY 2
INPUT S0 F_S_DESCRCMS
DISPLAY "Descrizione@50" S0
DISPLAY "Codice@20" CODTAB
COPY OUTPUT F_S_CODCMS
CHECKTYPE NORMAL
END
ENDPAGE
ENDMASK

View File

@ -18,13 +18,13 @@ PAGE "Conversione conti" 0 -1 0 10
STRING F_CONTOOMASA 14
BEGIN
PROMPT 2 2 "Conto OMASA "
PROMPT 2 2 "Conto OMASA "
FLAGS "D"
END
NUMBER F_GRUPPO 3
BEGIN
PROMPT 2 4 "Conto Eurocampo "
PROMPT 2 4 "Conto corrispondente "
USE LF_PCON KEY 1 SELECT (CONTO="")
INPUT GRUPPO F_GRUPPO
DISPLAY "Gruppo" GRUPPO
@ -35,7 +35,7 @@ END
NUMBER F_CONTO 3
BEGIN
PROMPT 24 4 ""
PROMPT 29 4 ""
USE LF_PCON KEY 1 SELECT (SOTTOCONTO="")
INPUT GRUPPO F_GRUPPO
INPUT CONTO F_CONTO
@ -49,7 +49,7 @@ END
NUMBER F_SOTTOCONTO 6
BEGIN
PROMPT 30 4 ""
PROMPT 35 4 ""
USE LF_PCON
INPUT GRUPPO F_GRUPPO
INPUT CONTO F_CONTO
@ -67,7 +67,7 @@ END
STRING F_DESCRIZIONE 50
BEGIN
PROMPT 39 4 ""
PROMPT 44 4 ""
USE LF_PCON KEY 2
INPUT DESCR F_DESCRIZIONE
DISPLAY "Descrizione@50" DESCR

5
cg/cgp4100c.h Executable file
View File

@ -0,0 +1,5 @@
// campi della maschera cgp4100c.uml
#define F_CMSOMASA 101
#define F_CODCMS 102
#define F_DESCRCMS 103

52
cg/cgp4100c.uml Executable file
View File

@ -0,0 +1,52 @@
#include "cgp4100c.h"
TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 10 2
BEGIN
PROMPT -12 -1 ""
END
BUTTON DLG_QUIT 10 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
PAGE "Conversione commesse" 0 -1 0 10
STRING F_CMSOMASA 14
BEGIN
PROMPT 2 2 "Commessa OMASA "
FLAGS "D"
END
STRING F_CODCMS 20
BEGIN
PROMPT 2 4 "Commessa corrispondente "
FLAGS "UZ"
USE CMS
INPUT CODTAB F_CODCMS
DISPLAY "Codice@20" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_CODCMS CODTAB
OUTPUT F_DESCRCMS S0
CHECKTYPE NORMAL
END
STRING F_DESCRCMS 50
BEGIN
PROMPT 2 5 "Descrizione "
USE CMS KEY 2
INPUT S0 F_DESCRCMS
DISPLAY "Descrizione@50" S0
DISPLAY "Codice@20" CODTAB
COPY OUTPUT F_CODCMS
CHECKTYPE NORMAL
END
ENDPAGE
ENDMASK