Patch level : 12.0 no-patch
Files correlati : build Commento : project
This commit is contained in:
parent
8ad46f57f8
commit
db9ad958d3
88
src/ve/ve5700.cpp
Normal file
88
src/ve/ve5700.cpp
Normal file
@ -0,0 +1,88 @@
|
||||
#include "ve5.h"
|
||||
#include "applicat.h"
|
||||
#include "mask.h"
|
||||
|
||||
#include "progind.h"
|
||||
#include "lffiles.h"
|
||||
#include "isam.h"
|
||||
#include "doc.h"
|
||||
#include "velib.h"
|
||||
#include "ve5700.h"
|
||||
|
||||
class TDoctype_mask : public TMask
|
||||
{
|
||||
public:
|
||||
TDoctype_mask() : TMask("ve5700") { }
|
||||
};
|
||||
|
||||
class TFPDoctype_change : public TSkeleton_application
|
||||
{
|
||||
protected:
|
||||
void main_loop() override;
|
||||
bool create() override;
|
||||
|
||||
};
|
||||
|
||||
void TFPDoctype_change::main_loop()
|
||||
{
|
||||
TDoctype_mask m;
|
||||
while (m.run() == K_ENTER)
|
||||
{
|
||||
TRelation rel(LF_DOC);
|
||||
m.autosave(rel);
|
||||
|
||||
TRectype recini(rel.curr());
|
||||
TRectype recfin(rel.curr());
|
||||
|
||||
recini.put(DOC_NDOC, m.get(F_DANUMERO));
|
||||
recfin.put(DOC_NDOC, m.get(F_ANUMERO));
|
||||
|
||||
TString filter;
|
||||
filter << DOC_TIPODOCSDI << "==\"" << m.get(F_INIZIALE) << "\"";
|
||||
|
||||
TCursor cur(&rel, filter, 1, &recini, &recfin);
|
||||
const long total = cur.items();
|
||||
if (total > 0)
|
||||
{
|
||||
TString msg = TR("Confermare l'aggiornamento di ");
|
||||
msg.add_plural(total, TR("documento"));
|
||||
if (yesno_box(msg))
|
||||
{
|
||||
TProgress_monitor pi(total, title());
|
||||
const TString& finale = m.get(F_FINALE);
|
||||
TDocumento* doc = new TDocumento;
|
||||
rel.lfile().set_curr(doc);
|
||||
cur.freeze();
|
||||
for (cur = 0; cur.pos() < total; ++cur)
|
||||
{
|
||||
if (!pi.add_status())
|
||||
break;
|
||||
doc->put(DOC_TIPODOCSDI, finale);
|
||||
int err = doc->rewrite();
|
||||
}
|
||||
|
||||
// Forza l'aggiornamento dell'indice del cursore
|
||||
TEdit_field& ef = m.efield(F_DANUMERO);
|
||||
TCursor* cur = ef.browse()->cursor();
|
||||
filter = cur->filter();
|
||||
cur->setfilter("");
|
||||
cur->setfilter(filter);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool TFPDoctype_change::create()
|
||||
{
|
||||
open_files(LF_TABCOM, LF_TAB, LF_CLIFO, LF_OCCAS, LF_INDSP, LF_CFVEN, LF_DOC, LF_RIGHEDOC,
|
||||
LF_ANAMAG, LF_MOVMAG, LF_RMOVMAG, LF_CONDV, LF_SVRIEP, LF_AGENTI, LF_PERCPROV, LF_CESS,
|
||||
LF_CAUSALI, LF_RCAUSALI, 0);
|
||||
return TSkeleton_application::create();
|
||||
}
|
||||
|
||||
int ve5700(int argc, char* argv[])
|
||||
{
|
||||
TFPDoctype_change a;
|
||||
a.run(argc, argv, "Aggiornamento tipo documento SDI (TD--)");
|
||||
return 0;
|
||||
}
|
12
src/ve/ve5700.h
Normal file
12
src/ve/ve5700.h
Normal file
@ -0,0 +1,12 @@
|
||||
#define F_PROVVIS 101
|
||||
#define F_ANNO 102
|
||||
#define F_CODNUM 103
|
||||
#define F_DESNUM 104
|
||||
#define F_INIZIALE 105
|
||||
#define F_DESCINI 106
|
||||
#define F_FINALE 107
|
||||
#define F_DESCFIN 108
|
||||
#define F_DANUMERO 109
|
||||
#define F_ANUMERO 110
|
||||
#define F_DACLIFO 111
|
||||
#define F_ACLIFO 112
|
167
src/ve/ve5700.uml
Normal file
167
src/ve/ve5700.uml
Normal file
@ -0,0 +1,167 @@
|
||||
#include <doc.h>
|
||||
#include "ve5700.h"
|
||||
|
||||
TOOLBAR "topbar" 0 0 0 2
|
||||
#include <stdbar.h>
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Cambiamento Tipo Doc SDI" 0 0 0 0
|
||||
|
||||
GROUPBOX DLG_NULL 70 4
|
||||
BEGIN
|
||||
PROMPT 1 1 "Numerazione"
|
||||
END
|
||||
|
||||
RADIOBUTTON F_PROVVIS 35
|
||||
BEGIN
|
||||
PROMPT 1 1 ""
|
||||
ITEM "D|Definitiva"
|
||||
ITEM "P|Provvisoria"
|
||||
FLAGS "Z"
|
||||
FIELD PROVV
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 59 2 "Anno "
|
||||
FLAGS "AU"
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD ANNO
|
||||
END
|
||||
|
||||
STRING F_CODNUM 4
|
||||
BEGIN
|
||||
PROMPT 2 3 "Codice "
|
||||
USE %NUM
|
||||
FLAGS "U"
|
||||
INPUT CODTAB F_CODNUM
|
||||
DISPLAY "Codice Num." CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_CODNUM CODTAB
|
||||
OUTPUT F_DESNUM S0
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD CODNUM
|
||||
END
|
||||
|
||||
STRING F_DESNUM 50
|
||||
BEGIN
|
||||
PROMPT 16 3 ""
|
||||
USE %NUM KEY 2
|
||||
INPUT S0 F_DESNUM
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Codice Num." CODTAB
|
||||
COPY OUTPUT F_CODNUM
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 70 4
|
||||
BEGIN
|
||||
PROMPT 1 5 "Tipo Doc SDI"
|
||||
END
|
||||
|
||||
LIST F_INIZIALE 4 40
|
||||
BEGIN
|
||||
PROMPT 2 6 "Iniziale"
|
||||
ITEM "|"
|
||||
ITEM "TD01|TD01 Fattura"
|
||||
ITEM "TD02|TD02 Acconto/Anticipo su fattura"
|
||||
ITEM "TD03|TD03 Acconto/Anticipo su parcella"
|
||||
ITEM "TD04|TD04 Nota di credito"
|
||||
ITEM "TD05|TD05 Nota di debito"
|
||||
ITEM "TD06|TD06 Parcella"
|
||||
ITEM "TD16|TD16 Integraz. fatt. rev.ch. interno"
|
||||
ITEM "TD17|TD17 Integ./autof. acq. servizi estero"
|
||||
ITEM "TD18|TD18 Integ. acq. beni intracomunitari"
|
||||
ITEM "TD19|TD19 Integ./autof. acq. beni ex art. 17"
|
||||
ITEM "TD20|TD20 Autofattura"
|
||||
ITEM "TD21|TD21 Autofattura per splafonamento"
|
||||
ITEM "TD22|TD22 Estrazione beni da Deposito IVA"
|
||||
ITEM "TD23|TD23 Estr. beni Deposito IVA vers. IVA"
|
||||
ITEM "TD24|TD24 Fatt. differita art.21 c.4 lett. a"
|
||||
ITEM "TD25|TD25 Fatt. differita art. 21 c.4 per.3 b"
|
||||
ITEM "TD26|TD26 Cess. beni ammort./passaggi interni"
|
||||
ITEM "TD27|TD27 Fatt. autoconsumo/cessioni gratuite"
|
||||
END
|
||||
|
||||
LIST F_FINALE 4 40
|
||||
BEGIN
|
||||
PROMPT 2 7 "Finale "
|
||||
ITEM "|"
|
||||
ITEM "TD01|TD01 Fattura"
|
||||
ITEM "TD02|TD02 Acconto/Anticipo su fattura"
|
||||
ITEM "TD03|TD03 Acconto/Anticipo su parcella"
|
||||
ITEM "TD04|TD04 Nota di credito"
|
||||
ITEM "TD05|TD05 Nota di debito"
|
||||
ITEM "TD06|TD06 Parcella"
|
||||
ITEM "TD16|TD16 Integraz. fatt. rev.ch. interno"
|
||||
ITEM "TD17|TD17 Integ./autof. acq. servizi estero"
|
||||
ITEM "TD18|TD18 Integ. acq. beni intracomunitari"
|
||||
ITEM "TD19|TD19 Integ./autof. acq. beni ex art. 17"
|
||||
ITEM "TD20|TD20 Autofattura"
|
||||
ITEM "TD21|TD21 Autofattura per splafonamento"
|
||||
ITEM "TD22|TD22 Estrazione beni da Deposito IVA"
|
||||
ITEM "TD23|TD23 Estr. beni Deposito IVA vers. IVA"
|
||||
ITEM "TD24|TD24 Fatt. differita art.21 c.4 lett. a"
|
||||
ITEM "TD25|TD25 Fatt. differita art. 21 c.4 per.3 b"
|
||||
ITEM "TD26|TD26 Cess. beni ammort./passaggi interni"
|
||||
ITEM "TD27|TD27 Fatt. autoconsumo/cessioni gratuite"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 70 4
|
||||
BEGIN
|
||||
PROMPT 1 9 "Intervallo"
|
||||
END
|
||||
|
||||
NUMBER F_DANUMERO 7
|
||||
BEGIN
|
||||
PROMPT 2 10 "Da "
|
||||
USE LF_DOC SELECT TIPODOCSDI==#F_INIZIALE
|
||||
JOIN LF_CLIFO INTO TIPOCF==TIPOCF CODCF==CODCF
|
||||
INPUT PROVV F_PROVVIS SELECT
|
||||
INPUT ANNO F_ANNO SELECT
|
||||
INPUT CODNUM F_CODNUM SELECT
|
||||
INPUT NDOC F_DANUMERO
|
||||
DISPLAY "Provv" PROVV
|
||||
DISPLAY "Anno" ANNO
|
||||
DISPLAY "Num." CODNUM
|
||||
DISPLAY "Tipo" TIPODOC
|
||||
DISPLAY "N.Doc. " NDOC
|
||||
DISPLAY "Data Doc. " DATADOC
|
||||
DISPLAY "Stato" STATO
|
||||
DISPLAY "Ragione Sociale@50" LF_CLIFO->RAGSOC
|
||||
OUTPUT F_DANUMERO NDOC
|
||||
CHECKTYPE SEARCH
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
STRING F_DACLIFO 50 52
|
||||
BEGIN
|
||||
PROMPT 16 10 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_ANUMERO 7
|
||||
BEGIN
|
||||
PROMPT 2 11 "A "
|
||||
COPY USE F_DANUMERO
|
||||
INPUT ANNO F_ANNO SELECT
|
||||
INPUT PROVV F_PROVVIS SELECT
|
||||
INPUT CODNUM F_CODNUM SELECT
|
||||
INPUT NDOC F_ANUMERO
|
||||
COPY DISPLAY F_DANUMERO
|
||||
OUTPUT F_ANUMERO NDOC
|
||||
CHECKTYPE SEARCH
|
||||
NUM_EXPR (#F_ANUMERO==0)||(#F_ANUMERO>=#F_DANUMERO)
|
||||
WARNING "Il numero finale deve essere maggiore di quello iniziale"
|
||||
END
|
||||
|
||||
STRING F_ACLIFO 50 52
|
||||
BEGIN
|
||||
PROMPT 16 11 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
Loading…
x
Reference in New Issue
Block a user