cg2100.cpp Corretto errore MI3637 sull'incasso immediato

cg2102.h    Trasformato in TFilename il path di EasyDoc
cg2106.cpp  Reso piu' robusto il collegamento ad EasyDoc


git-svn-id: svn://10.65.10.50/trunk@5508 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1997-10-31 15:55:14 +00:00
parent 40210c6fb7
commit f5f8ac49a5
3 changed files with 41 additions and 37 deletions

View File

@ -615,7 +615,7 @@ const char* TPrimanota_application::get_next_key()
else else
_tmp.add(m.get(F_DATACOMP)); _tmp.add(m.get(F_DATACOMP));
if (iva() == iva_vendite) if (iva() == iva_vendite || _incasso->_step == 2)
{ {
_tmp.add(F_DATADOC); _tmp.add(m.get(F_DATADOC)); // Ricopia data documento _tmp.add(F_DATADOC); _tmp.add(m.get(F_DATADOC)); // Ricopia data documento

View File

@ -74,7 +74,7 @@ class TPrimanota_application : public TRelation_application
TAssoc_array _colori; // Colori delle righe TAssoc_array _colori; // Colori delle righe
TString _EasyDocPath; // Path eseguibile EasyDoc TFilename _EasyDocPath; // Path eseguibile EasyDoc
static bool showpartite_handler(TMask_field& f, KEY k); static bool showpartite_handler(TMask_field& f, KEY k);
static bool speserimb_handler(TMask_field& f, KEY k); static bool speserimb_handler(TMask_field& f, KEY k);

View File

@ -327,7 +327,6 @@ bool TPrimanota_application::test_prorata()
ok = !esiste_riga_iva_detraibile; ok = !esiste_riga_iva_detraibile;
else else
ok = esiste_riga_iva_detraibile; ok = esiste_riga_iva_detraibile;
} }
return ok; return ok;
@ -390,20 +389,21 @@ bool TPrimanota_application::easydoc_installed()
{ {
// check autorization // check autorization
if (!has_module(AIAUT)) if (!has_module(AIAUT))
return FALSE; return FALSE;
// where is EasyDoc installed? // where is EasyDoc installed?
char szBuf[50]; TFilename szBuf;
int entrylen = GetPrivateProfileString("Easydoc", "Path", "", szBuf, sizeof(szBuf), "EasyDoc.ini"); int entrylen = GetPrivateProfileString("Easydoc", "Path", "C:\\EASYDOC",
szBuf.get_buffer(), szBuf.size(),
"EasyDoc.ini");
// EasyDoc there isn't // EasyDoc there isn't
if (!entrylen) if (!entrylen)
return FALSE; return FALSE;
// paste EasyDoc path // paste EasyDoc path
szBuf[entrylen] = '\0'; szBuf[entrylen] = '\0';
_EasyDocPath = szBuf; _EasyDocPath = szBuf;
_EasyDocPath << "EASYDOC.EXE"; _EasyDocPath.add("EASYDOC.EXE");
// is EasyDoc present? // is EasyDoc present?
bool ok = fexist(_EasyDocPath); bool ok = fexist(_EasyDocPath);
@ -411,9 +411,10 @@ bool TPrimanota_application::easydoc_installed()
return ok; return ok;
} }
// Il documento attuale e' connesso a easydoc?
bool TPrimanota_application::easydoc_connected() bool TPrimanota_application::easydoc_connected()
{ {
return easydoc_installed(); return TRUE;
} }
bool TPrimanota_application::run_easydoc(const char* azione) const bool TPrimanota_application::run_easydoc(const char* azione) const
@ -434,32 +435,36 @@ bool TPrimanota_application::run_easydoc(const char* azione) const
TFilename dati_dir = get_firm_dir(); TFilename dati_dir = get_firm_dir();
// completa path relativo, // completa path relativo,
// ma che male c'era a registrarlo sempre assoluto?? // ma che male c'era a registrarlo sempre assoluto??
if (dati_dir[1] != ':') if (dati_dir[0] == '\\' || dati_dir[0] == '/' || dati_dir[1] != ':')
{ {
TFilename modulename(argv(0)); TFilename modulename(argv(0));
dati_dir = modulename.path(); dati_dir = modulename.path();
dati_dir.add(get_firm_dir()); dati_dir.add(get_firm_dir());
} }
// rimuove barre e controbarre per dargli un aspetto decente // rimuove barre e controbarre per dargli un aspetto decente
dati_dir.replace('/','\\'); dati_dir.replace('/','\\');
for (int pos = dati_dir.find("\\\\"); pos != -1; pos = dati_dir.find("\\\\")) for (int pos = dati_dir.find("\\\\"); pos >= 0; pos = dati_dir.find("\\\\"))
dati_dir[pos] = ' '; dati_dir[pos] = ' ';
dati_dir.strip_spaces(); dati_dir.strip_spaces();
// nome archivio // nome archivio
TFilename archivio(dati_dir); TFilename archivio(dati_dir);
archivio.add("easydoc.mdb"); archivio.add("easydoc.mdb");
// drive di archiviazione // drive di archiviazione
TString drv_di_arch = dati_dir.mid(0,2); TString drv_di_arch;
if (dati_dir[1] == ':')
drv_di_arch = dati_dir.left(2);
// directory di archiviazione // directory di archiviazione
TString dir_di_arch = dati_dir.mid(2); TString dir_di_arch(dati_dir);
dir_di_arch << '\\'; if (dir_di_arch[1] == ':')
dir_di_arch.ltrim(2);
dir_di_arch << SLASH;
// prepara sempre sezione "EASYDOC" // prepara sempre sezione "EASYDOC"
TConfig ini(ininame, "EASYDOC"); TConfig ini(ininame, "EASYDOC");
ini.set("Azione", azione); ini.set("Azione", azione);
ini.set("Archivio", archivio); ini.set("Archivio", archivio);
ini.set("Cartella", "Movimenti primanota"); ini.set("Cartella", "Movimenti primanota");
@ -470,18 +475,17 @@ bool TPrimanota_application::run_easydoc(const char* azione) const
// prepara la sezione "DefinizioneDoc1" (se non esiste l'archivio mdb) // prepara la sezione "DefinizioneDoc1" (se non esiste l'archivio mdb)
if (!fexist(archivio)) if (!fexist(archivio))
{ {
ini.set_paragraph("DefinizioneDoc1"); ini.set_paragraph("DefinizioneDoc1");
ini.set("Archivio", archivio); ini.set("Archivio", archivio);
ini.set("NomeDoc", "Movimenti primanota"); ini.set("NomeDoc", "Movimenti primanota");
ini.set("DirDiArchiviazione", dir_di_arch); ini.set("DirDiArchiviazione", dir_di_arch);
ini.set("DriveDiArchiviazione", drv_di_arch); ini.set("DriveDiArchiviazione", drv_di_arch);
ini.set("DirDocumento", "eddoc"); ini.set("DirDocumento", "eddoc");
ini.set("Campo0", "Numero registrazione"); ini.set("Campo0", "Numero registrazione");
ini.set("Tipo0", "Numero"); ini.set("Tipo0", "Numero");
ini.set("Campo1", "Data registrazione"); ini.set("Campo1", "Data registrazione");
ini.set("Tipo1", "Data"); ini.set("Tipo1", "Data");
} }
} }
TExternal_app app(cmdline); TExternal_app app(cmdline);