Patch level :10.0

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
prima stesura programma modelassistance


git-svn-id: svn://10.65.10.50/trunk@20662 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2010-07-12 15:40:49 +00:00
parent 7a5fc7d5bf
commit a1405c1783
7 changed files with 325 additions and 3 deletions

View File

@ -1,6 +1,9 @@
- PF --------------------------------------------------------------------------------------------------------------
PF0001
Stampa etichette Fiorito
- PD --------------------------------------------------------------------------------------------------------------
PD0001
Trasferimento ad AS400 Dolber (antico vesirio.exe)
@ -35,6 +38,8 @@ Esportazione clienti e indirizzi di spedizione Pharmatex (solo msk e rep)
PD6342
Stampa dei costi/ricavi analitici per anno riproporzionati per mese (Habilita)
- PG -------------------------------------------------------------------------------------------------------------
PG0001
Generazione documenti da paghe
Trasferimento Maestri a TeamSystem
@ -63,11 +68,20 @@ PG0388 De Cade' (Sicuri)
Esportazione ordini
Importazione bolle
- PL -------------------------------------------------------------------------------------------------------------
PL0001 (Silav)
Personalizzazioni per lavanderini!
Diana2000
Fabris
- PN -------------------------------------------------------------------------------------------------------------
PN0001
Importazione dati vendite al dettaglio
- PS -------------------------------------------------------------------------------------------------------------
PS0017
Gestione Incassi/Pagamenti CRPA
@ -75,9 +89,6 @@ PS0430 Il Cigno
Correlazioni articoli utenti
Configurazione campi per utente
PN0001
Importazione dati vendite al dettaglio
PS0077
(ex ve7)
Trasferimento documenti Teamsystem (ex ve7100, Pedretti)
@ -142,6 +153,8 @@ Importazione listini dei gommari (prassiroma, ex ve7500)
PS1104
Importazione articoli da file .csv per ditta TENDER (pennari di prassiroma)
- PT -------------------------------------------------------------------------------------------------------------
PT0001
Settaggio clienti non in allegato

15
ps/ps0330.cpp Executable file
View File

@ -0,0 +1,15 @@
#include <xvt.h>
#include "ps0330.h"
int main( int argc, char** argv )
{
const int r = (argc > 1) ? argv[1][1]-'0' : -1;
switch (r)
{
case 0: ps0330100(argc, argv); break; // listini per marca Model Assistence
default: break;
}
return 0;
}

1
ps/ps0330.h Executable file
View File

@ -0,0 +1 @@
int ps0330100(int, char**);

154
ps/ps0330100.cpp Executable file
View File

@ -0,0 +1,154 @@
#include <applicat.h>
#include <automask.h>
#include <dongle.h>
#include <modaut.h>
#include <progind.h>
#include <reprint.h>
#include <reputils.h>
#include <utility.h>
#include "../mg/anamag.h"
#include "ps0330100a.h"
///////////////////////////////////////////////
// MASCHERA
///////////////////////////////////////////////
class TMultimarche_mask : public TAutomask
{
protected:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TMultimarche_mask();
};
TMultimarche_mask::TMultimarche_mask() : TAutomask("ps0330100a")
{
}
bool TMultimarche_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
{
/*switch(o.dlg())
{
default:
break;
}*/
return true;
}
///////////////////////////////////////////////
// RECORDSET
///////////////////////////////////////////////
///////////////////////////////////////////////
// REPORT
///////////////////////////////////////////////
//il report in questione ha la query inside..
//..e non necessita di altro che i FIELD #... dei campi della maschera per avere i valori..
//..delle set_var interne
class TMultimarche_report : public TReport
{
protected:
virtual bool use_mask() { return false; } //questo ci vuole perchè la maschera ha un nome != dai report
public:
TMultimarche_report() {}
};
///////////////////////////////////////////////
// APPLICAZIONE
///////////////////////////////////////////////
class TMultimarche : public TSkeleton_application
{
TMultimarche_mask* _mask;
protected:
virtual bool check_autorization() const {return false;}
virtual const char * extra_modules() const {return "ve";}
virtual bool create();
virtual void main_loop();
public:
void elabora();
};
void TMultimarche::elabora()
{
TMultimarche_report rep;
if (rep.load(_mask->get(F_REPORT)))
{
TRecordset* recset = rep.recordset();
const long anno = _mask->get_int(F_ANNO);
//crea l'elenco delle marche
TString marche_query;
marche_query << "USE ANAMAG\nSELECT CODART?=\"???";
marche_query << "\nFROM CODART=#DAMARCA";
marche_query << "\nTO CODART=#AMARCA";
TISAM_recordset marche_recset(marche_query);
const TString& damarca = _mask->get(F_DAMARCA);
const TString& amarca = _mask->get(F_AMARCA);
marche_recset.set_var("#DAMARCA", damarca);
marche_recset.set_var("#AMARCA", amarca);
const long marche_items = marche_recset.items();
TProgind pi(marche_items, "Esportazione bovina in corso...", true, true);
for (bool ok = marche_recset.move_first(); ok; ok = marche_recset.move_next())
{
if (!pi.addstatus(1))
break;
const TString4 marca = marche_recset.get(ANAMAG_CODART).as_string();
recset->set_var("#MARCA", marca);
recset->set_var("#ANNO", anno);
const long items = recset->items();
if (items > 0)
{
TReport_book book;
book.add(rep);
TFilename fname = _mask->get(F_PATH_FILE);
TString4 str_anno;
str_anno << anno;
fname.add(str_anno);
fname << "_" << marca;
fname.ext("xls");
book.export_excel(fname, false);
}
}
}
}
bool TMultimarche::create()
{
//se non ha VE non può proseguire
if (!has_module(VEAUT))
return error_box(TR("Modulo non autorizzato"));
Tdninst dninst;
if (!dninst.can_I_run(true))
return error_box(TR("Programma non autorizzato!"));
return TSkeleton_application::create();
}
void TMultimarche::main_loop()
{
_mask = new TMultimarche_mask;
if (_mask->run() != K_QUIT)
elabora();
delete _mask;
_mask = NULL;
}
int ps0330100 (int argc, char **argv)
{
TMultimarche a;
a.run(argc,argv, TR("Rimanenze per marca"));
return true;
}

8
ps/ps0330100a.h Executable file
View File

@ -0,0 +1,8 @@
#define F_ANNO 101
#define F_DAMARCA 102
#define F_DAMARCA_D 103
#define F_AMARCA 104
#define F_AMARCA_D 105
#define F_REPORT 107
#define F_PATH_FILE 108

35
ps/ps0330100a.rep Executable file
View File

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="ps0330100a" lpi="6" class="ps0330">
<description>rimanenze per marca</description>
<font face="Arial" size="8" />
<section type="Head" pattern="1" />
<section type="Head" level="1" pattern="1" />
<section type="Body" pattern="1" />
<section type="Body" level="1" pattern="1">
<field type="Stringa" width="10" pattern="1">
<source>CODART</source>
</field>
<field x="10.5" type="Stringa" width="50" pattern="1">
<source>ANAMAG.DESCR</source>
</field>
<field x="61" type="Stringa" width="2" pattern="1">
<source>UMART.UM</source>
</field>
<field x="64" type="Numero" align="right" width="10" pattern="1">
<source>GIAC</source>
</field>
<field x="75" type="Valuta" align="right" width="10" pattern="1" text="#########,@@">
<source>UMART.PREZZO</source>
</field>
</section>
<section type="Foot" pattern="1" />
<section type="Foot" level="1" pattern="1" />
<sql>USE 109 KEY 2
SELECT (CODART[1,3]=#MARCA)&#26;&#26;(CODART!=#MARCA)
BY ANAMAG.DESCR
JOIN ANAMAG INTO CODART=CODART
JOIN UMART INTO CODART=CODART NRIGA=1
FROM ANNOES=#ANNO
TO ANNOES=#ANNO
</sql>
</report>

96
ps/ps0330100a.uml Executable file
View File

@ -0,0 +1,96 @@
#include "ps0330100a.h"
PAGE "Rimanenze per marca" -1 -1 78 10
NUMBER F_ANNO 4
BEGIN
PROMPT 1 1 "Anno "
CHECKTYPE REQUIRED
END
GROUPBOX DLG_NULL 76 4
BEGIN
PROMPT 1 2 "@bMarche"
END
STRING F_DAMARCA 3
BEGIN
PROMPT 2 3 "Da "
USE LF_ANAMAG SELECT CODART?="???"
INPUT CODART[1,3] F_DAMARCA
DISPLAY "Marca" CODART[1,3]
DISPLAY "Descrizione@50" DESCR
OUTPUT F_DAMARCA CODART[1,3]
OUTPUT F_DAMARCA_D DESCR
CHECKTYPE SEARCH
END
STRING F_DAMARCA_D 50
BEGIN
PROMPT 15 3 ""
USE LF_ANAMAG KEY 2 SELECT CODART?="???"
INPUT DESCR F_DAMARCA_D
DISPLAY "Descrizione@50" DESCR
DISPLAY "Marca" CODART[1,3]
COPY OUTPUT F_DAMARCA
CHECKTYPE SEARCH
END
STRING F_AMARCA 3
BEGIN
PROMPT 2 4 "A "
COPY USE F_DAMARCA
INPUT CODART[1,3] F_AMARCA
COPY DISPLAY F_DAMARCA
OUTPUT F_AMARCA CODART[1,3]
OUTPUT F_AMARCA_D DESCR
CHECKTYPE SEARCH
END
STRING F_AMARCA_D 50
BEGIN
PROMPT 15 4 ""
COPY USE F_DAMARCA_D
INPUT DESCR F_AMARCA_D
COPY DISPLAY F_DAMARCA_D
COPY OUTPUT F_AMARCA
CHECKTYPE SEARCH
END
STRING F_REPORT 50
BEGIN
PROMPT 1 6 "Report "
RSELECT "ps0330"
CHECKTYPE REQUIRED
END
STRING F_PATH_FILE 255 50
BEGIN
PROMPT 1 7 "Cartella dest. "
DSELECT
FLAGS "M"
CHECKTYPE REQUIRED
WARNING "Selezionare una cartella valida!"
END
STRING DLG_PROFILE 50
BEGIN
PROMPT 1 -1 "Profilo "
PSELECT
END
ENDPAGE
TOOLBAR "" 0 0 0 2
BUTTON DLG_OK 10 2
BEGIN
PROMPT 1 1 "~Mmmuuu!"
PICTURE TOOL_PACK2MAG
END
#include <helpbar.h>
ENDPAGE
ENDMASK