Patch level : 12.0 550

Files correlati     : 
Commento            : 
- Aggiunti nuovi campi richiesti
- Aggiunta tabella di sincronizzazione IVA (scopiazzata da Pack)

git-svn-id: svn://10.65.10.50/branches/R_10_00@24437 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
mtollari 2018-03-16 14:22:35 +00:00
parent 41dcf99672
commit 5d3628682f
7 changed files with 194 additions and 9 deletions

View File

@ -6,9 +6,10 @@ int main(int argc, char** argv)
const int p = argc > 1 ? argv[1][1]-'0' : 0;
switch(p)
{
case 1: bs0200(argc, argv); break; // Impostazioni Beestore
case 2: bs0300(argc, argv); break; // Importazione da SKNET
default: bs0100(argc, argv); break; // Beestore Synchronizer
case 1: bs0200(argc, argv); break; // Impostazioni Beestore
case 2: bs0300(argc, argv); break; // Importazione da SKNET
case 3: bs0400(argc, argv); break; // Tabelle di transazione
default: bs0100(argc, argv); break; // Beestore Synchronizer
}
return 0;
}

View File

@ -1,3 +1,4 @@
int bs0100(int argc, char* argv[]);
int bs0200(int argc, char* argv[]);
int bs0300(int argc, char* argv[]);
int bs0400(int argc, char* argv[]);

View File

@ -501,8 +501,6 @@ void TSknet_sync::sync_anamag()
rccor.put(CODCORR_NRIGA, riga);
if (ccor.read(rccor, _isequal) == NOERR)
{
TString a = rccor.get(CODCORR_CODART);
TString b = odbc.get("CodPadre").as_string();
while (add && rccor.get(CODCORR_CODART) == odbc.get("CodPadre").as_string())
{
riga = rccor.get_int(CODCORR_NRIGA);
@ -867,7 +865,9 @@ void TSknet_sync::load_clifo(const char tipocf)
split_phone(odbc, "Telefono", clifo, CLI_PTEL, CLI_TEL);
split_phone(odbc, "Cellulare", clifo, CLI_PTEL2, CLI_TEL2);
split_phone(odbc, "CellulareSMS", clifo, CLI_PTEL3, CLI_TEL3);
split_phone(odbc, "Fax", clifo, CLI_PFAX, CLI_FAX);
clifo.put(CLI_MAIL, odbc.get("EMail").as_string());
clifo.put(CLI_CODPAG, odbc.get("Cli_CodPagamento").as_string());
if (hasConai)
{
@ -1000,6 +1000,23 @@ void TSknet_sync::load_clifo(const char tipocf)
clifo.put(CLI_BYMAIL, bymail);
clifo.put(CLI_DOCMAIL, email);
}
if (token.starts_with("REF="))
{
clifo.put(CLI_REFERENTE, token.mid(4));
}
if (token.starts_with("EDOC="))
{
clifo.put(CLI_BYMAIL, true);
clifo.put(CLI_DOCMAIL, token.mid(5));
}
if (token.starts_with("SCONTO="))
{
clifo.put(CLI_SCONTO, token.mid(7));
}
if (token.starts_with("AGENT="))
{
clifo.put(CLI_CODAG, token.mid(6));
}
else
{
if (!token.blank())
@ -1300,9 +1317,6 @@ void TSknet_sync::sync_doc()
default:
case 0:
// Tiporiga 1 -> Merce
if(hasConai && ini_get_bool(CONFIG_DITTA, "BS", "SKUseCustomRiga", false))
tiporiga = ini_get_string(CONFIG_DITTA, "BS", "SKNumCustomRiga", "14");
else
tiporiga = "01";
break;
case 1:
@ -1328,9 +1342,19 @@ void TSknet_sync::sync_doc()
}
}
TRectype& rdoc = doc->new_row(tiporiga);
const TString80 codart = docs.get("CodArticolo").as_string();
if (tiporiga == "01" && ini_get_bool(CONFIG_DITTA, "BS", "SKUseCustomRiga", false))
{
TLocalisamfile codcor(LF_CODCORR); codcor.setkey(2);
TRectype rcodcor(LF_CODCORR);
rcodcor.put(CODCORR_CODARTALT, codart);
if(codcor.read(rcodcor, _isequal) == NOERR)
tiporiga = ini_get_string(CONFIG_DITTA, "BS", "SKNumCustomRiga", "14");
}
TRectype& rdoc = doc->new_row(tiporiga);
rdoc.put(RDOC_CODART, codart);
if (tipoart == 2)
@ -1375,6 +1399,10 @@ void TSknet_sync::sync_doc()
if (codiva.blank())
codiva = ini_get_string(CONFIG_DITTA, "BS", "SKCodIvaDef");
}
else
{
codiva = cache().get("%SKI", codiva, "S6");
}
rdoc.put(RDOC_CODIVA, codiva);
TString80 sconto;

95
src/bs/bs0400.cpp Normal file
View File

@ -0,0 +1,95 @@
// gestione tabelle passaggio pack
#include <automask.h>
#include <tabapp.h>
class TMask_tabtp : public TAutomask
{
protected:
bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TMask_tabtp(const char* name);
virtual ~TMask_tabtp();
};
TMask_tabtp::TMask_tabtp(const char* name) : TAutomask(name)
{
}
TMask_tabtp::~TMask_tabtp()
{
}
bool TMask_tabtp::on_field_event(TOperable_field& o, TField_event e, long jolly)
{
return true;
}
class Tab_app_sk : public Tab_application
{
protected: // TRelation_application
virtual bool user_destroy();
virtual bool user_create();
virtual int rewrite(const TMask& m);
virtual TString& get_mask_name(TString& name) const;
virtual TMask* set_mask(TMask * m = NULL);
public:
Tab_app_sk();
virtual ~Tab_app_sk() {}
};
HIDDEN inline Tab_app_sk& app() { return (Tab_app_sk&)main_app(); }
// costruttore
Tab_app_sk::Tab_app_sk() {}
TString& Tab_app_sk::get_mask_name(TString& name) const
{
name = get_tabname();
if (name[0] == '%')
name = name.mid(1);
name.insert("bstb", 0);
return name;
}
TMask* Tab_app_sk::set_mask(TMask* m)
{
if (m == NULL)
{
TFilename name; get_mask_name(name);
m = new TMask_tabtp(name);
}
return TTable_application::set_mask(m);
}
bool Tab_app_sk::user_create()
{
bool ok = Tab_application::user_create();
if (ok)
{
TMask& mask = *set_mask();
}
return ok;
}
bool Tab_app_sk::user_destroy()
{
return Tab_application::user_destroy();
}
int Tab_app_sk::rewrite(const TMask& m)
{
return Tab_application::rewrite(m);
}
int bs0400(int argc, char* argv[])
{
Tab_app_sk a;
a.run(argc, argv, TR("Tabella"));
return 0;
}

View File

@ -6,3 +6,11 @@ Flags = "F"
Item_01 = "Configurazione", "bs0 -0", "F", 9015
Item_02 = "Sincronizzazione", "bs0 -1", "F", 9015
Item_02 = "SKNET Importer", "bs0 -2", "F", 9015
Item_03 = "Tabelle di conversione", [BSMENU_002]
[BSMENU_002]
Caption = "Tabelle di conversione"
Picture = <ve01>
Module = bs
Flags = "F"
Item_01 = "Codici IVA", "bs0 -3 %SKI", "" 9015

3
src/bs/bstbski.h Normal file
View File

@ -0,0 +1,3 @@
#define FLD_TABTPI_CODTAB 101
#define FLD_TABTPI_DESCR 102
#define FLD_TABTPI_CODIVA 103

49
src/bs/bstbski.uml Normal file
View File

@ -0,0 +1,49 @@
#include "bstbski.h"
TOOLBAR "topbar" 0 0 0 2
#include <relapbar.h>
ENDPAGE
PAGE "Conversione tabella IVA SKNET" 0 2 0 0
STRING FLD_TABTPI_CODTAB 15
BEGIN
PROMPT 3 1 "Cod. IVA SKNET "
FIELD CODTAB
KEY 1
USE %SKI
FLAGS "U"
INPUT CODTAB FLD_TABTPI_CODTAB
DISPLAY "Cod. IVA SKNET@15" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT FLD_TABTPI_CODTAB CODTAB
OUTPUT FLD_TABTPI_DESCR S0
CHECKTYPE REQUIRED
END
STRING FLD_TABTPI_DESCR 50
BEGIN
PROMPT 3 2 "Descrizione "
USE %TPI
KEY 2
FIELD S0
END
STRING FLD_TABTPI_CODIVA 4
BEGIN
PROMPT 3 3 "Cod. corrispondente "
HELP "Codice IVA"
FIELD S6
FLAGS "U"
USE %IVA KEY 1
INPUT CODTAB FLD_TABTPI_CODIVA
DISPLAY "Codice" CODTAB
DISPLAY "Codice IVA@50" S0
OUTPUT FLD_TABTPI_CODIVA CODTAB
CHECKTYPE REQUIRED
END
ENDPAGE
ENDMASK