Exemplo n.º 1
0
    def loadDataset(self, dataSet):

        conn = sqlite3.connect('storage.db')  # @UndefinedVariable
        conn.row_factory = sqlite3.Row  # @UndefinedVariable

        cur = conn.cursor()
        sqlStr = self.parentView.getSql("fBrowser_getApplViews")
        for row in cur.execute(sqlStr, (dataSet["mainView"], )):
            item = {}
            fields = row.keys()
            for index in range(len(fields)):
                item[fields[index]] = row[index]
            dataSet["applviews"].append(dict2obj(item))

        sqlStr = self.parentView.getSql("fBrowser_getViewFields")
        for row in cur.execute(sqlStr, (dataSet["mainView"], )):
            item = {}
            fields = row.keys()
            for index in range(len(fields)):
                item[fields[index]] = row[index]
            dataSet["viewfields"].append(dict2obj(item))

        dataSet["userconfig"] = []
        conn.close()

        dataSetInfo = [{
            "infoName":
            "userconfig",
            "infoType":
            "table",
            "classAlias":
            "ui_userconfig",
            "filterStr":
            "employee_id=" +
            str(self.parentView.application.app_settings["employee_id"]) +
            " and (cfgroup='browserConfig' or section='" +
            dataSet["mainView"] + "') ",
            "orderStr":
            None
        }]

        conn = npiAdapter(self.parentView.application.app_settings["url"] +
                          "/" +
                          self.parentView.application.app_config["connection"]
                          ["npi_service"])
        response = conn.loadDataSet(self.parentView.getCredentials(),
                                    dataSetInfo)
        if response == "error":
            return
        else:
            for recordSetInfo in response:
                for record in recordSetInfo["recordSet"]:
                    dataSet[recordSetInfo["infoName"]].append(
                        dict2obj(record, "ui_" + recordSetInfo["infoName"]))

        dataSet["changeData"] = False
Exemplo n.º 2
0
 def initDataSet(self, _iniId=-1):
   dataSet = {}
   
   customerRow = dict2obj({"id":None, "custtype":None, "custnumber":None, "custname":None, 
     "taxnumber":None,"account":None, "notax":0, "terms":0, "creditlimit":0, "discount":0, 
     "notes":None, "inactive":0, "deleted":0}, "customer")
   customerRow.id = _iniId
   dataSet["customer"] = []
   dataSet["customer"].append(customerRow)
   
   dataSet["groups"] = []
   dataSet["deffield"] = []
   dataSet["deffield_prop"] = []
   dataSet["link"] = []
   dataSet["_link"] = []
   dataSet["fieldvalue"] = []
   dataSet["_fieldvalue"] = []
   dataSet["address"] = []
   dataSet["_address"] = []
   dataSet["contact"] = []
   dataSet["_contact"] = []
   dataSet["calendar_view"] = []
   
   dataSet["changeData"] = False
   dataSet["fieldvalueId"] = 0
   dataSet["addressId"] = 0
   dataSet["contactId"] = 0
   dataSet["linkId"] = 0
   dataSet["deletedFlag"] = False
   dataSet["newCustnumber"] = ""
   
   return dataSet
Exemplo n.º 3
0
 def setConfig(self,
               dataSet,
               icfgroup,
               icfname,
               ivalue,
               iorderby=None,
               isection=None,
               deleteRow=False):
     for config in dataSet["userconfig"]:
         if config.section == isection and config.cfgroup == icfgroup and config.cfname == icfname:
             if deleteRow == False:
                 config.cfvalue = ivalue
                 config.orderby = iorderby
             else:
                 dataSet["userconfig"].remove(config)
                 dataSet["_userconfig"].append(config)
             return
     config = dict2obj({}, "ui_userconfig")
     config.employee_id = self.parentView.application.app_settings[
         "employee_id"]
     config.section = isection
     config.cfgroup = icfgroup
     config.cfname = icfname
     config.cfvalue = ivalue
     config.orderby = iorderby
     dataSet["userconfig"].append(config)
Exemplo n.º 4
0
 def addFieldRow(self, dataSet, df, urlink = "", ct_id = 0, ct_desc = ""):
   
   fieldtype = self.parentView.getItemFromKey(dataSet["groups"], "id", self.parentView.getItemFromKey(dataSet["deffield"], "fieldname", df.fieldname).fieldtype).groupvalue
   if fieldtype in("urlink","notes","customer","tool","trans","transitem","transmovement","transpayment","product","project","employee","place"):
     wx.MessageBox("Sorry, but this fieldtype ("+fieldtype+") is not handled...", ":-(", wx.OK | wx.ICON_ERROR)
     return
   
   cf = dict2obj({"id":None, "fieldname":None, "ref_id":None, "value":None, 
                  "notes":None, "deleted":0},"fieldvalue")
   dataSet["fieldvalueId"] = dataSet["fieldvalueId"] + 1
   cf.id = -dataSet["fieldvalueId"]
   cf.fieldname = df.fieldname
   cf.ref_id = dataSet["customer"][0].id
   
   cf.fieldtype = self.parentView.getItemFromKey(dataSet["groups"], "id", self.parentView.getItemFromKey(dataSet["deffield"], "fieldname", df.fieldname).fieldtype).groupvalue
   cf.description = self.parentView.getItemFromKey(dataSet["deffield"], "fieldname", df.fieldname).description
   cf.visible = bool(self.parentView.getItemFromKey(dataSet["deffield"], "fieldname", df.fieldname).visible)
   cf.readonly = bool(self.parentView.getItemFromKey(dataSet["deffield"], "fieldname", df.fieldname).visible)
   if cf.fieldtype=="bool":
     cf.value = "f"
   elif cf.fieldtype=="date":
     cf.value = date.strftime(date.today(),"%Y-%m-%d")
   elif cf.fieldtype in("integer", "float"):
     cf.value = "0"
   elif cf.fieldtype=="urlink":
     cf.value = urlink
   elif cf.fieldtype=="valuelist":
     cf.valuelist = self.parentView.getItemFromKey(dataSet["deffield"], "fieldname", df.fieldname).valuelist
   elif cf.fieldtype in("customer","tool","trans","transitem","transmovement","transpayment","product","project","employee","place"):
     cf.value = str(ct_id)
     cf.valuelist = ct_desc       
   dataSet["fieldvalue"].append(cf)
   dataSet["changeData"] = True
Exemplo n.º 5
0
 def addCustomerGroups(self, dataSet, groups_id):
     for item in dataSet["link"]:
         if item.ref_id_2 == groups_id:
             return
     cg = dict2obj(
         {
             "id": None,
             "nervatype_1": None,
             "ref_id_1": None,
             "nervatype_2": None,
             "ref_id_2": None,
             "linktype": 0,
             "deleted": 0
         }, "link")
     dataSet["linkId"] = dataSet["linkId"] + 1
     cg.id = -dataSet["linkId"]
     cg.nervatype_1 = self.parentView.getItemFromKey2(
         dataSet["groups"], "groupname", "nervatype", "groupvalue",
         "customer").id
     cg.ref_id_1 = dataSet["customer"][0].id
     cg.nervatype_2 = self.parentView.getItemFromKey2(
         dataSet["groups"], "groupname", "nervatype", "groupvalue",
         "groups").id
     cg.ref_id_2 = groups_id
     cg.description = self.parentView.getItemFromKey(
         dataSet["groups"], "id", groups_id).groupvalue
     dataSet["link"].append(cg)
     dataSet["changeData"] = True
Exemplo n.º 6
0
    def addFieldRow(self, dataSet, df, urlink="", ct_id=0, ct_desc=""):

        fieldtype = self.parentView.getItemFromKey(
            dataSet["groups"], "id",
            self.parentView.getItemFromKey(dataSet["deffield"], "fieldname",
                                           df.fieldname).fieldtype).groupvalue
        if fieldtype in ("urlink", "notes", "customer", "tool", "trans",
                         "transitem", "transmovement", "transpayment",
                         "product", "project", "employee", "place"):
            wx.MessageBox(
                "Sorry, but this fieldtype (" + fieldtype +
                ") is not handled...", ":-(", wx.OK | wx.ICON_ERROR)
            return

        cf = dict2obj(
            {
                "id": None,
                "fieldname": None,
                "ref_id": None,
                "value": None,
                "notes": None,
                "deleted": 0
            }, "fieldvalue")
        dataSet["fieldvalueId"] = dataSet["fieldvalueId"] + 1
        cf.id = -dataSet["fieldvalueId"]
        cf.fieldname = df.fieldname
        cf.ref_id = dataSet["customer"][0].id

        cf.fieldtype = self.parentView.getItemFromKey(
            dataSet["groups"], "id",
            self.parentView.getItemFromKey(dataSet["deffield"], "fieldname",
                                           df.fieldname).fieldtype).groupvalue
        cf.description = self.parentView.getItemFromKey(
            dataSet["deffield"], "fieldname", df.fieldname).description
        cf.visible = bool(
            self.parentView.getItemFromKey(dataSet["deffield"], "fieldname",
                                           df.fieldname).visible)
        cf.readonly = bool(
            self.parentView.getItemFromKey(dataSet["deffield"], "fieldname",
                                           df.fieldname).visible)
        if cf.fieldtype == "bool":
            cf.value = "f"
        elif cf.fieldtype == "date":
            cf.value = date.strftime(date.today(), "%Y-%m-%d")
        elif cf.fieldtype in ("integer", "float"):
            cf.value = "0"
        elif cf.fieldtype == "urlink":
            cf.value = urlink
        elif cf.fieldtype == "valuelist":
            cf.valuelist = self.parentView.getItemFromKey(
                dataSet["deffield"], "fieldname", df.fieldname).valuelist
        elif cf.fieldtype in ("customer", "tool", "trans", "transitem",
                              "transmovement", "transpayment", "product",
                              "project", "employee", "place"):
            cf.value = str(ct_id)
            cf.valuelist = ct_desc
        dataSet["fieldvalue"].append(cf)
        dataSet["changeData"] = True
Exemplo n.º 7
0
 def addAddressRow(self, dataSet):
   addr = dict2obj({"id":None, "nervatype":None, "ref_id":None, "country":None, "state":None,
     "zipcode":None, "city":None, "street":None, "notes":None, "deleted":0},"address")
   dataSet["addressId"] = dataSet["addressId"] + 1
   addr.id = -dataSet["addressId"]
   addr.nervatype = self.parentView.getItemFromKey2(dataSet["groups"], "groupname", "nervatype", "groupvalue", "customer").id
   addr.ref_id = dataSet["customer"][0].id
   dataSet["address"].append(addr)
   dataSet["changeData"] = True
Exemplo n.º 8
0
 def addContactRow(self, dataSet):
   cont = dict2obj({"id":None, "nervatype":None, "ref_id":None, "firstname":None, "surname":None,
     "status":None, "phone":None, "fax":None, "mobil":None, "email":None, "notes":None, 
     "deleted":0},"contact")
   dataSet["contactId"] = dataSet["contactId"] + 1
   cont.id = -dataSet["contactId"]
   cont.nervatype = self.parentView.getItemFromKey2(dataSet["groups"], "groupname", "nervatype", "groupvalue", "customer").id
   cont.ref_id = dataSet["customer"][0].id
   dataSet["contact"].append(cont)
   dataSet["changeData"] = True
Exemplo n.º 9
0
  def loadDataset(self, dataSet):
    
    conn = sqlite3.connect('storage.db')  # @UndefinedVariable
    conn.row_factory = sqlite3.Row  # @UndefinedVariable
    
    cur = conn.cursor()
    sqlStr = self.parentView.getSql("fBrowser_getApplViews")
    for row in cur.execute(sqlStr, (dataSet["mainView"],)):
      item = {}; fields = row.keys()
      for index in range(len(fields)):
        item[fields[index]] = row[index]
      dataSet["applviews"].append(dict2obj(item))
    
    sqlStr = self.parentView.getSql("fBrowser_getViewFields")
    for row in cur.execute(sqlStr, (dataSet["mainView"],)):
      item = {}; fields = row.keys()
      for index in range(len(fields)):
        item[fields[index]] = row[index]
      dataSet["viewfields"].append(dict2obj(item))
    
    dataSet["userconfig"] = []
    conn.close()
    
    dataSetInfo = [{"infoName":"userconfig", "infoType":"table", "classAlias":"ui_userconfig", 
       "filterStr":"employee_id="+str(self.parentView.application.app_settings["employee_id"])+
       " and (cfgroup='browserConfig' or section='"+dataSet["mainView"]+"') ", 
       "orderStr":None}]
    
    conn = npiAdapter(self.parentView.application.app_settings["url"]+"/"+
      self.parentView.application.app_config["connection"]["npi_service"])
    response = conn.loadDataSet(self.parentView.getCredentials(), dataSetInfo)
    if response=="error":
      return
    else:
      for recordSetInfo in response:
        for record in recordSetInfo["recordSet"]:
          dataSet[recordSetInfo["infoName"]].append(dict2obj(record,"ui_"+recordSetInfo["infoName"]))

    dataSet["changeData"] = False
Exemplo n.º 10
0
 def addCustomerGroups(self, dataSet, groups_id):
   for item in dataSet["link"]:
     if item.ref_id_2 == groups_id:
       return
   cg = dict2obj({"id":None, "nervatype_1":None, "ref_id_1":None, "nervatype_2":None, 
     "ref_id_2":None, "linktype":0, "deleted":0},"link")
   dataSet["linkId"] = dataSet["linkId"] + 1
   cg.id = -dataSet["linkId"]
   cg.nervatype_1 = self.parentView.getItemFromKey2(dataSet["groups"], "groupname", "nervatype", "groupvalue", "customer").id
   cg.ref_id_1 = dataSet["customer"][0].id
   cg.nervatype_2 = self.parentView.getItemFromKey2(dataSet["groups"], "groupname", "nervatype", "groupvalue", "groups").id
   cg.ref_id_2 = groups_id
   cg.description = self.parentView.getItemFromKey(dataSet["groups"], "id", groups_id).groupvalue
   dataSet["link"].append(cg)
   dataSet["changeData"] = True
Exemplo n.º 11
0
    def initDataSet(self, _iniId=-1):
        dataSet = {}

        customerRow = dict2obj(
            {
                "id": None,
                "custtype": None,
                "custnumber": None,
                "custname": None,
                "taxnumber": None,
                "account": None,
                "notax": 0,
                "terms": 0,
                "creditlimit": 0,
                "discount": 0,
                "notes": None,
                "inactive": 0,
                "deleted": 0
            }, "customer")
        customerRow.id = _iniId
        dataSet["customer"] = []
        dataSet["customer"].append(customerRow)

        dataSet["groups"] = []
        dataSet["deffield"] = []
        dataSet["deffield_prop"] = []
        dataSet["link"] = []
        dataSet["_link"] = []
        dataSet["fieldvalue"] = []
        dataSet["_fieldvalue"] = []
        dataSet["address"] = []
        dataSet["_address"] = []
        dataSet["contact"] = []
        dataSet["_contact"] = []
        dataSet["calendar_view"] = []

        dataSet["changeData"] = False
        dataSet["fieldvalueId"] = 0
        dataSet["addressId"] = 0
        dataSet["contactId"] = 0
        dataSet["linkId"] = 0
        dataSet["deletedFlag"] = False
        dataSet["newCustnumber"] = ""

        return dataSet
Exemplo n.º 12
0
 def setConfig(self, dataSet, icfgroup, icfname, ivalue, iorderby=None, isection=None, deleteRow=False):
   for config in dataSet["userconfig"]:
     if config.section==isection and config.cfgroup==icfgroup and config.cfname==icfname:
       if deleteRow==False:
         config.cfvalue = ivalue
         config.orderby = iorderby
       else:
         dataSet["userconfig"].remove(config)
         dataSet["_userconfig"].append(config)
       return
   config = dict2obj({},"ui_userconfig")
   config.employee_id = self.parentView.application.app_settings["employee_id"] 
   config.section = isection 
   config.cfgroup = icfgroup 
   config.cfname = icfname 
   config.cfvalue = ivalue 
   config.orderby = iorderby
   dataSet["userconfig"].append(config)   
       
Exemplo n.º 13
0
 def setFilterData(self):            
   self.dg_filters.ClearGrid()
   dataField=["fieldlabel", "ftype", "fvalue"] 
   headerText={"fieldlabel":self.getLocale("filter_fieldname_headerText"),
               "ftype":self.getLocale("filter_ftype_headerText"),
               "fvalue":self.getLocale("filter_fvalue_headerText")} 
   
   filter_table = [] 
   for citem in self.dataSet["userconfig"]:
     if citem.section == self.mainView and citem.cfgroup == self.sectionView and citem.cfname.startswith("filter_"):
       fitem = dict2obj(json.loads(citem.cfvalue))
       fitem.citem = citem
       filter_table.append(fitem)
   
   stable = filterTable(dataField, headerText, self.filter_type, filter_table, self.setFilterSource)
   self.dg_filters.SetTable(stable, True)
   self.dg_filters.SetColSize(0, 150)
   self.dg_filters.SetColSize(1, 50)
   self.dg_filters.SetColSize(2, 160)
   self.dg_filters.ForceRefresh()
Exemplo n.º 14
0
 def setFilterData(self):            
   self.dg_filters.ClearGrid()
   dataField=["fieldlabel", "ftype", "fvalue"] 
   headerText={"fieldlabel":self.getLocale("filter_fieldname_headerText"),
               "ftype":self.getLocale("filter_ftype_headerText"),
               "fvalue":self.getLocale("filter_fvalue_headerText")} 
   
   filter_table = [] 
   for citem in self.dataSet["userconfig"]:
     if citem.section == self.mainView and citem.cfgroup == self.sectionView and citem.cfname.startswith("filter_"):
       fitem = dict2obj(json.loads(citem.cfvalue))
       fitem.citem = citem
       filter_table.append(fitem)
   
   stable = filterTable(dataField, headerText, self.filter_type, filter_table, self.setFilterSource)
   self.dg_filters.SetTable(stable, True)
   self.dg_filters.SetColSize(0, 150)
   self.dg_filters.SetColSize(1, 50)
   self.dg_filters.SetColSize(2, 160)
   self.dg_filters.ForceRefresh()
Exemplo n.º 15
0
 def addAddressRow(self, dataSet):
     addr = dict2obj(
         {
             "id": None,
             "nervatype": None,
             "ref_id": None,
             "country": None,
             "state": None,
             "zipcode": None,
             "city": None,
             "street": None,
             "notes": None,
             "deleted": 0
         }, "address")
     dataSet["addressId"] = dataSet["addressId"] + 1
     addr.id = -dataSet["addressId"]
     addr.nervatype = self.parentView.getItemFromKey2(
         dataSet["groups"], "groupname", "nervatype", "groupvalue",
         "customer").id
     addr.ref_id = dataSet["customer"][0].id
     dataSet["address"].append(addr)
     dataSet["changeData"] = True
Exemplo n.º 16
0
 def addContactRow(self, dataSet):
     cont = dict2obj(
         {
             "id": None,
             "nervatype": None,
             "ref_id": None,
             "firstname": None,
             "surname": None,
             "status": None,
             "phone": None,
             "fax": None,
             "mobil": None,
             "email": None,
             "notes": None,
             "deleted": 0
         }, "contact")
     dataSet["contactId"] = dataSet["contactId"] + 1
     cont.id = -dataSet["contactId"]
     cont.nervatype = self.parentView.getItemFromKey2(
         dataSet["groups"], "groupname", "nervatype", "groupvalue",
         "customer").id
     cont.ref_id = dataSet["customer"][0].id
     dataSet["contact"].append(cont)
     dataSet["changeData"] = True