diff --git a/src/f9/f9lib.h b/src/f9/f9lib.h index 2223b405c..4649e4b1d 100644 --- a/src/f9/f9lib.h +++ b/src/f9/f9lib.h @@ -8,7 +8,7 @@ #include "strings.h" #include "date.h" #include "real.h" -#include "cglib.h" +#include "../cg/cglib.h" #include "sheet.h" #include "sqlset.h" #include "reprint.h" @@ -156,8 +156,9 @@ private: std::shared_ptr> _name_catdocs; int _mode_sheet; - std::shared_ptr find_causcont(const TString& caus); // OK - std::shared_ptr find_tipodoc(const TString& tipodoc); // OK + std::shared_ptr find_causcont(const TString& caus) const ; // OK + std::shared_ptr find_tipodoc(const TString& tipodoc) const ; // OK + std::shared_ptr find_tipodocsdi(const TString& tipodocsdi) const ; // OK std::vector>>::iterator find_sheet_annessi(const TString& catdoc); // OK @@ -193,6 +194,7 @@ public: std::shared_ptr get_sheet_catdocs(); std::shared_ptr get_sheet_ann(const TString& catdoc); std::shared_ptr mov2cat(int numreg); + const char * tipo2caus_cont(const TString & tipodoc) { std::shared_ptr c = find_tipodocsdi(tipodoc); if (c != nullptr) return c->causcont; else return ""; } void reload(); static void remove_all(); static void remove_all_ann(); diff --git a/src/f9/f9lib01.cpp b/src/f9/f9lib01.cpp index 25c4b58c4..02aa6e415 100644 --- a/src/f9/f9lib01.cpp +++ b/src/f9/f9lib01.cpp @@ -2,11 +2,11 @@ #include "f9lib.h" -#include "f1lib.h" +#include "../f1/f1lib.h" #include "f901tab.h" #include "progind.h" #include "clifo.h" -#include "cglib.h" +#include "../cg/cglib.h" #include "mov.h" #include "../fp/fplib.h" #include "annessif9.h" @@ -1269,7 +1269,7 @@ TF9_dberr::TF9_dberr() // TCategorie_doc /////////////////////////////////////////////////////////////////////////////////////////// -std::shared_ptr TCategorie_doc::find_causcont(const TString& caus) +std::shared_ptr TCategorie_doc::find_causcont(const TString& caus) const { for (auto it = _rows.begin(); it != _rows.end(); ++it) { @@ -1279,7 +1279,7 @@ std::shared_ptr TCategorie_doc::find_causcont(const return nullptr; } -std::shared_ptr TCategorie_doc::find_tipodoc(const TString& tipodoc) +std::shared_ptr TCategorie_doc::find_tipodoc(const TString& tipodoc) const { for (auto it = _rows.begin(); it != _rows.end(); ++it) { @@ -1290,6 +1290,16 @@ std::shared_ptr TCategorie_doc::find_tipodoc(const T return nullptr; } +std::shared_ptr TCategorie_doc::find_tipodocsdi(const TString& tipodocsdi) const +{ + for (auto it = _rows.begin(); it != _rows.end(); ++it) + { + if ((*it)->caus_sost == tipodocsdi) + return *it; + } + return nullptr; +} + std::vector>>::iterator TCategorie_doc::find_sheet_annessi(const TString& catdoc) { for(auto it = _sheets_annessi.begin(); it != _sheets_annessi.end(); ++it)