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
_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

View File

@ -74,7 +74,7 @@ class TPrimanota_application : public TRelation_application
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 speserimb_handler(TMask_field& f, KEY k);

View File

@ -327,7 +327,6 @@ bool TPrimanota_application::test_prorata()
ok = !esiste_riga_iva_detraibile;
else
ok = esiste_riga_iva_detraibile;
}
return ok;
@ -393,9 +392,10 @@ bool TPrimanota_application::easydoc_installed()
return FALSE;
// where is EasyDoc installed?
char szBuf[50];
int entrylen = GetPrivateProfileString("Easydoc", "Path", "", szBuf, sizeof(szBuf), "EasyDoc.ini");
TFilename szBuf;
int entrylen = GetPrivateProfileString("Easydoc", "Path", "C:\\EASYDOC",
szBuf.get_buffer(), szBuf.size(),
"EasyDoc.ini");
// EasyDoc there isn't
if (!entrylen)
return FALSE;
@ -403,7 +403,7 @@ bool TPrimanota_application::easydoc_installed()
// paste EasyDoc path
szBuf[entrylen] = '\0';
_EasyDocPath = szBuf;
_EasyDocPath << "EASYDOC.EXE";
_EasyDocPath.add("EASYDOC.EXE");
// is EasyDoc present?
bool ok = fexist(_EasyDocPath);
@ -411,9 +411,10 @@ bool TPrimanota_application::easydoc_installed()
return ok;
}
// Il documento attuale e' connesso a easydoc?
bool TPrimanota_application::easydoc_connected()
{
return easydoc_installed();
return TRUE;
}
bool TPrimanota_application::run_easydoc(const char* azione) const
@ -434,7 +435,7 @@ bool TPrimanota_application::run_easydoc(const char* azione) const
TFilename dati_dir = get_firm_dir();
// completa path relativo,
// 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));
dati_dir = modulename.path();
@ -443,7 +444,7 @@ bool TPrimanota_application::run_easydoc(const char* azione) const
// rimuove barre e controbarre per dargli un aspetto decente
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.strip_spaces();
@ -452,11 +453,15 @@ bool TPrimanota_application::run_easydoc(const char* azione) const
archivio.add("easydoc.mdb");
// 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
TString dir_di_arch = dati_dir.mid(2);
dir_di_arch << '\\';
TString dir_di_arch(dati_dir);
if (dir_di_arch[1] == ':')
dir_di_arch.ltrim(2);
dir_di_arch << SLASH;
// prepara sempre sezione "EASYDOC"
TConfig ini(ininame, "EASYDOC");
@ -481,7 +486,6 @@ bool TPrimanota_application::run_easydoc(const char* azione) const
ini.set("Campo1", "Data registrazione");
ini.set("Tipo1", "Data");
}
}
TExternal_app app(cmdline);