This commit was manufactured by cvs2svn to create branch 'R_10_00'.

git-svn-id: svn://10.65.10.50/branches/R_10_00@21996 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
(no author) 2011-04-20 13:59:53 +00:00
parent 8107a1ac63
commit 02de80282e
4 changed files with 471 additions and 0 deletions

131
ha/ha3700.cpp Executable file
View File

@ -0,0 +1,131 @@
#include <applicat.h>
#include <automask.h>
#include <progind.h>
#include <recarray.h>
#include <relation.h>
#include <report.h>
#include <textset.h>
#include "../ba/ba8500.h"
#include "ha3700a.h"
///////////////////////////////////////////////////////////
// Report
///////////////////////////////////////////////////////////
class TPrint_storico_report : public TReport
{
protected:
virtual bool use_mask() { return false; }
public:
TPrint_storico_report();
};
TPrint_storico_report::TPrint_storico_report()
{
load("ha3700a");
}
///////////////////////////////////////////////////////////
// Maschera
///////////////////////////////////////////////////////////
class TPrint_storico_mask : public TAutomask
{
protected:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
void elabora();
TPrint_storico_mask();
virtual ~TPrint_storico_mask() {}
};
void TPrint_storico_mask::elabora()
{
//prende un tot di dati dalla maschera per stabilire la query
const TString& codag = get(F_CODAG);
const long codcf = get_long(F_CODCF);
const int codindsp = get_int(F_CODINDSP);
const TString& codart = get(F_CODART);
const long progressivo = get_long(F_PROGRESSIVO);
TString16 codtab;
codtab.format("%-5s%07d", (const char*)codart, progressivo);
const TString& matricola = get(F_MATRICOLA);
const TString& tipo = get(F_TIPO);
//genera la query parametrica
TString query;
query << "USE &HAHIS";
query << "\nSELECT (BETWEEN(S7[1,1];#TIPO;#TIPO))&&(BETWEEN(TRIM(401@->S0[6,20]);#MATRICOLA;#MATRICOLA))&&(BETWEEN(122->CODAGE,#CODAG,#CODAG))&&(BETWEEN(I0,#CODCF,#CODCF))&&(BETWEEN(I1,#INDSPED,#INDSPED))";
query << "\nBY 122->CODAGE I0 I1 CODTAB[1,12]";
query << "\nJOIN &HAATT ALIAS 401 INTO CODTAB=CODTAB[1,12]";
query << "\nJOIN CFVEN INTO TIPOCF=\"C\" CODCF==I0";
query << "\nJOIN AGENTI TO CFVEN INTO CODAGE==CODAG";
query << "\nFROM CODTAB=#CODART";
query << "\nTO CODTAB=#CODART";
/*TISAM_recordset recset(query);
recset.set_var("#MATRICOLA", matricola);
recset.set_var("#CODAG", codag);
recset.set_var("#CODCF", codcf);
recset.set_var("#CODTAB", codtab);*/
//const long recset_items = recset.items();
//appiccia il recordset al report
TPrint_storico_report rep;
rep.set_recordset(query);
rep.mask2report(*this);
rep.preview();
}
bool TPrint_storico_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
{
/*switch (o.dlg())
{
}*/
return true;
}
TPrint_storico_mask::TPrint_storico_mask() : TAutomask("ha3700a")
{
}
///////////////////////////////////////////////////////////
// Applicazione
///////////////////////////////////////////////////////////
class TPrint_storico : public TKlarkKent_app
{
protected:
public:
virtual void main_loop();
};
void TPrint_storico::main_loop()
{
TPrint_storico_mask mask;
while (mask.run() == K_ENTER)
{
mask.elabora();
}
}
int ha3700(int argc, char* argv[])
{
TPrint_storico app;
app.run(argc, argv, TR("Stampa storico attrezzature"));
return 0;
}

12
ha/ha3700a.h Executable file
View File

@ -0,0 +1,12 @@
#define F_CODAG 201
#define F_DESCRAG 202
#define F_CODCF 203
#define F_RAGSOC 204
#define F_CODINDSP 205
#define F_INDSP 206
#define F_RAGSOCINDSP 207
#define F_CODART 208
#define F_DESART 209
#define F_PROGRESSIVO 210
#define F_MATRICOLA 211
#define F_TIPO 212

149
ha/ha3700a.rep Executable file
View File

@ -0,0 +1,149 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="ha3700a" lpi="6">
<description>Storico attrezzature</description>
<font face="Arial" size="8" />
<section type="Head" pattern="1" />
<section type="Head" level="1" pattern="1">
<prescript description="H1 PRESCRIPT">MESSAGE RESET,F1</prescript>
<field border="1" radius="50" x="30" y="0.5" type="Testo" valign="center" align="center" shade_offset="50" width="50" height="3" pattern="2" text="STORICO ATTREZZATURE">
<font face="Arial" bold="1" size="14" />
</field>
</section>
<section type="Head" level="2" page_break="1" pattern="1">
<groupby>122-&#3E;CODAGE</groupby>
<font face="Arial" bold="1" size="8" />
<prescript description="H2 PRESCRIPT">MESSAGE RESET,F2</prescript>
<field border="1" x="1" y="1.75" type="Linea" width="110" height="0" pattern="1" />
<field x="1" y="0.75" type="Stringa" bg_color="#C0C0C0" width="6" id="101" pattern="2">
<source>122-&#3E;CODAGE</source>
</field>
<field x="7" y="0.75" type="Stringa" bg_color="#C0C0C0" width="50" id="102" pattern="2">
<prescript description="H2.102 PRESCRIPT">MESSAGE ISAMREAD,122,CODAGE=#101,RAGSOC
</prescript>
</field>
</section>
<section type="Head" level="3" pattern="1">
<groupby>STR(I0)+STR(I1)</groupby>
<font face="Arial" bold="1" size="8" />
<prescript description="H3 PRESCRIPT">MESSAGE RESET,F3</prescript>
<field x="10" y="0.75" type="Numero" hidden="1" align="right" width="3" pattern="1">
<source>I1</source>
<prescript description="H3.0 PRESCRIPT">MESSAGE EMPTY ISAMREAD,20,TIPOCF='C'!CODCF=I0,103=RAGSOC!104=INDCF!105=CAPCF!106=COMCF
MESSAGE ISAMREAD,16,TIPOCF='C'!CODCF=I0!CODIND=I1,103=RAGSOC!104=INDIR!105=CAP!106=COM</prescript>
</field>
<field x="3" y="0.75" type="Numero" align="right" width="6" id="101" pattern="1">
<source>I0</source>
</field>
<field x="10" y="0.75" type="Stringa" width="35" id="103" pattern="1">
<font face="Arial Narrow" bold="1" size="8" />
</field>
<field x="45" y="0.75" type="Stringa" width="25" id="104" pattern="1">
<font face="Arial Narrow" bold="1" size="8" />
</field>
<field x="70" y="0.75" type="Stringa" width="5" id="105" pattern="1">
<font face="Arial Narrow" bold="1" size="8" />
</field>
<field x="75" y="0.75" type="Stringa" hidden="1" width="4" id="106" pattern="1">
<font face="Arial Narrow" size="8" />
</field>
<field x="75" y="0.75" type="Stringa" width="20" id="107" pattern="1">
<font face="Arial Narrow" bold="1" size="8" />
<prescript description="H3.107 PRESCRIPT">MESSAGE ISAMREAD,13,COM=#106,DENCOM</prescript>
</field>
</section>
<section type="Head" level="4" pattern="1">
<groupby>CODTAB[1,12]</groupby>
<font italic="1" face="Arial" bold="1" size="8" />
<prescript description="H4 PRESCRIPT">MESSAGE RESET,F4</prescript>
<field x="3" type="Stringa" width="5" id="101" pattern="1">
<source>CODTAB[1,5]</source>
</field>
<field x="8" type="Stringa" align="right" width="7" id="102" pattern="1">
<source>CODTAB[6,12]</source>
</field>
<field x="16" type="Stringa" width="15" id="103" pattern="1">
<source>401@-&#3E;S0[6,20]</source>
</field>
<field x="32" type="Stringa" width="50" id="104" pattern="1">
<prescript description="H4.104 PRESCRIPT">MESSAGE ISAMREAD,47,CODART=#101,DESCR</prescript>
</field>
</section>
<section type="Body" pattern="1" />
<section type="Body" level="1" pattern="1">
<field x="6" type="Array" width="1" pattern="1">
<source>S7[1,1]</source>
<list>
<li Value="Comodato" Code="C" />
<li Value="Descrittivo" Code="D" />
<li Value="Insegne" Code="I" />
<li Value="Riparazione" Code="R" />
<li Value="Varie" Code="V" />
</list>
</field>
<field x="8" type="Booleano" width="1" pattern="1">
<source>B0</source>
</field>
<field x="10" type="Data" width="10" pattern="1">
<source>D0</source>
</field>
<field x="21" type="Stringa" width="70" pattern="1">
<source>S0</source>
</field>
<field x="92" type="Stringa" width="2" pattern="1">
<source>S6[1,2]</source>
</field>
<field x="94" type="Numero" align="right" width="3" pattern="1">
<source>R0</source>
</field>
<field x="98" type="Valuta" align="right" width="10" pattern="1" text="#########,@@">
<source>R1</source>
<prescript description="B1.0 PRESCRIPT">MESSAGE ADD,F4.110
MESSAGE ADD,F3.110
MESSAGE ADD,F2.110
MESSAGE ADD,F1.110</prescript>
</field>
</section>
<section type="Foot" pattern="1" />
<section type="Foot" level="1" pattern="1" />
<section type="Foot" level="2" pattern="1">
<font face="Arial" bold="1" size="8" />
<field border="1" x="1" y="0.25" type="Linea" width="110" height="0" pattern="1" />
<field x="1" y="0.5" type="Testo" bg_color="#C0C0C0" width="9" pattern="2" text="Totale " />
<field x="10" y="0.5" type="Stringa" bg_color="#C0C0C0" width="6" id="101" pattern="2">
<source>H2.101</source>
</field>
<field x="16" y="0.5" type="Stringa" bg_color="#C0C0C0" width="50" id="102" pattern="2">
<source>H2.102</source>
</field>
<field x="96" y="0.5" type="Valuta" align="right" width="12" id="110" pattern="1" text="#########,@@" />
</section>
<section type="Foot" level="3" pattern="1">
<font face="Arial" bold="1" size="8" />
<field border="1" x="0.5" y="0.25" type="Linea" width="110" height="0" pattern="1" />
<field x="3" y="0.5" type="Testo" width="8" pattern="1" text="Totale " />
<field x="11.5" y="0.5" type="Numero" align="right" width="6" id="101" pattern="1">
<source>H3.101</source>
</field>
<field x="18.5" y="0.5" type="Stringa" width="50" id="102" pattern="1">
<source>H3.103</source>
</field>
<field x="97" y="0.5" type="Valuta" align="right" width="11" id="110" pattern="1" text="#########,@@" />
</section>
<section type="Foot" level="4" height="1.5" pattern="1">
<font italic="1" face="Arial" bold="1" size="8" />
<field x="2" y="0.25" type="Testo" width="8" pattern="1" text="Totale " />
<field x="24" y="0.25" type="Stringa" width="15" pattern="1">
<source>H4.103</source>
</field>
<field x="40" y="0.25" type="Stringa" width="50" pattern="1">
<source>H4.104</source>
</field>
<field x="11" y="0.25" type="Stringa" width="5" id="101" pattern="1">
<source>H4.101</source>
</field>
<field x="16" y="0.25" type="Numero" align="right" width="7" id="102" pattern="1">
<source>H4.102</source>
</field>
<field x="97" y="0.25" type="Valuta" align="right" width="11" id="110" pattern="1" text="#########,@@" />
</section>
</report>

179
ha/ha3700a.uml Executable file
View File

@ -0,0 +1,179 @@
#include "ha3700a.h"
PAGE "Storico attrezzature" -1 -1 78 12
STRING F_CODAG 5
BEGIN
PROMPT 1 1 "Agente "
USE LF_AGENTI
INPUT CODAGE F_CODAG
DISPLAY "Codice@8R" CODAGE
DISPLAY "Descrizione@50" RAGSOC
OUTPUT F_CODAG CODAGE
OUTPUT F_DESCRAG RAGSOC
CHECKTYPE NORMAL
FLAGS "UZ"
FIELD #CODAG
END
STRING F_DESCRAG 50
BEGIN
PROMPT 20 1 ""
USE LF_AGENTI KEY 2
INPUT RAGSOC F_DESCRAG
DISPLAY "Descrizione@50" RAGSOC
DISPLAY "Codice@5R" CODAGE
COPY OUTPUT F_CODAG
CHECKTYPE NORMAL
END
NUMBER F_CODCF 6
BEGIN
PROMPT 1 2 "Cliente "
FLAGS "U"
USE LF_CLIFO
INPUT TIPOCF "C"
INPUT CODCF F_CODCF
DISPLAY "Codice" CODCF
DISPLAY "Descrizione@50" RAGSOC
OUTPUT F_CODCF CODCF
OUTPUT F_RAGSOC RAGSOC
CHECKTYPE NORMAL
FIELD #CODCF
END
STRING F_RAGSOC 50
BEGIN
PROMPT 20 2 ""
USE LF_CLIFO KEY 2
INPUT TIPOCF "C"
INPUT RAGSOC F_RAGSOC
DISPLAY "Descrizione@50" RAGSOC
DISPLAY "Codice" CODCF
COPY OUTPUT F_CODCF
CHECKTYPE NORMAL
END
NUMBER F_CODINDSP 3
BEGIN
PROMPT 1 3 "Sede "
USE LF_INDSP
INPUT TIPOCF "C"
INPUT CODCF F_CODCF SELECT
INPUT CODIND F_CODINDSP
DISPLAY "Cod." CODIND
DISPLAY "Indirizzo@35" INDIR
DISPLAY "Ragione sociale@50" RAGSOC
OUTPUT F_CODCF CODCF
OUTPUT F_CODINDSP CODIND
OUTPUT F_INDSP INDIR
OUTPUT F_RAGSOCINDSP RAGSOC
CHECKTYPE NORMAL
FIELD #INDSPED
END
STRING F_INDSP 35
BEGIN
PROMPT 20 3 ""
FLAGS "D"
CHECKTYPE SEARCH
END
STRING F_RAGSOCINDSP 50
BEGIN
PROMPT 1 4 "Ragsoc. "
FLAGS "D"
CHECKTYPE SEARCH
END
GROUPBOX DLG_NULL 76 4
BEGIN
PROMPT 1 6 "@bAttrezzatura"
END
STRING F_CODART 5
BEGIN
PROMPT 2 7 "Articolo "
FLAGS "U"
USE LF_ANAMAG SELECT (GRMERC="50")&&(SOSPESO!="X")
INPUT CODART F_CODART
DISPLAY "Codice" CODART
DISPLAY "Descrizione@50" DESCR
OUPUT F_CODART CODART
OUPUT F_DESART DESCR
CHECKTYPE NORMAL
FIELD #CODART
END
STRING F_DESART 50
BEGIN
PROMPT 23 7 ""
USE LF_ANAMAG KEY 2 SELECT (GRMERC="50")&&(SOSPESO!="X")
INPUT DESCR F_DESART
DISPLAY "Descrizione@50" DESCR
DISPLAY "Codice" CODART
COPY OUTPUT F_CODART
CHECKTYPE NORMAL
END
NUMBER F_PROGRESSIVO 7
BEGIN
PROMPT 2 8 "Progres. "
FLAGS "UZ"
USE &ATT
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
INPUT CODTAB[1,5] F_CODART
INPUT CODTAB[6,12] F_PROGRESSIVO
DISPLAY "Progressivo" CODTAB[6,12]
DISPLAY "Articolo" CODTAB[1,5]
DISPLAY "Matricola@15" S0[6,20]
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
DISPLAY "Cespite@10" S1[1,10]
OUTPUT F_CODART CODTAB[1,5]
OUTPUT F_PROGRESSIVO CODTAB[6,12]
OUTPUT F_MATRICOLA S0[6,20]
//OUTPUT F_CESPITE S1[1,10]
OUTPUT F_CODCF I0
CHECKTYPE SEARCH
FIELD #PROGRESSIVO
END
STRING F_MATRICOLA 15
BEGIN
PROMPT 23 8 "Matricola "
FLAGS "U"
USE &ATT KEY 2
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
INPUT S0[1,5] F_CODART
INPUT S0[6,20] F_MATRICOLA
DISPLAY "Codice@5" S0[1,5]
DISPLAY "Matricola@15" S0[6,20]
DISPLAY "Progressivo" CODTAB[6,12]
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
DISPLAY "Cespite@10" S1[1,10]
DISPLAY "Cliente" I0
COPY OUTPUT F_PROGRESSIVO
CHECKTYPE SEARCH
FIELD #MATRICOLA
END
LISTBOX F_TIPO 1 16
BEGIN
PROMPT 1 10 "Tipo intervento"
ITEM " |Tutti"
ITEM "C|Comodato d'uso"
ITEM "D|Descrittivo"
ITEM "I|Insegne nuove"
ITEM "R|Riparazione"
ITEM "V|Varie"
FIELD #TIPO
END
ENDPAGE
TOOLBAR "" 0 0 0 2
#include "printbar.h"
ENDPAGE
ENDMAK