Esempio n. 1
0
 def __getitem__(self, key):
     if isinstance(key, (basestring, QtCore.QString)):
         try:
             property = self._action.getProperty(unicode(key))
             propertyType = property.type()
             if self.isVisible(propertyType):
                 return self.getInstance(CPropertyInfo, property)
             else:
                 actionType = self._action.getType()
                 raise CException(
                     u'У действия типа "%s" свойство "%s" не выводится в выполнении работ'
                     % (actionType.name, unicode(key)))
         except KeyError:
             actionType = self._action.getType()
             raise CException(u'Действие типа "%s" не имеет свойства "%s"' %
                              (actionType.name, unicode(key)))
     if isinstance(key, (int, long)):
         try:
             return self.getInstance(CPropertyInfo,
                                     self._action.getPropertyByIndex(key))
         except IndexError:
             actionType = self._action.getType()
             raise CException(
                 u'Действие типа "%s" не имеет свойства c индексом "%s"' %
                 (actionType.name, unicode(key)))
     else:
         raise TypeError, u'Action property subscription must be string or integer'
Esempio n. 2
0
 def __getitem__(self, key):
     if isinstance(key, (basestring, QtCore.QString)):
         try:
             return self.getInstance(CPropertyInfo,
                                     self._action.getProperty(unicode(key)))
         except KeyError:
             actionType = self._action.getType()
             raise CException(u'Действие типа "%s" не имеет свойства "%s"' %
                              (actionType.name, unicode(key)))
     if isinstance(key, (int, long)):
         try:
             return self.getInstance(CPropertyInfo,
                                     self._action.getPropertyByIndex(key))
         except IndexError:
             actionType = self._action.getType()
             raise CException(
                 u'Действие типа "%s" не имеет свойства c индексом "%s"' %
                 (actionType.name, unicode(key)))
     else:
         raise TypeError, u'Action property subscription must be string or integer'
Esempio n. 3
0
 def openDBF(self):
     dbf = None
     fileName = forceStringEx(self.edtFileName.text())
     result = os.path.isfile(fileName)
     if result:
         dbf = Dbf(fileName, readOnly=True, encoding='cp866')
         fieldsList = ['CODE', 'NAME', 'ORG', 'ISPAY', 'DATN', 'DATO']
         if not dbfCheckNames(dbf, fieldsList):
             raise CException(u'файл %s\nне содержит одного из полей:\n%s' % (fileName, ', '.join(fieldsList)))
         self.labelNum.setText(u'всего записей в источнике: '+str(dbf.recordCount))
     return dbf
Esempio n. 4
0
 def on_btnOpenFromFile_clicked(self):
     fileName = QtGui.QFileDialog.getOpenFileName(
         parent=self,
         caption=u'Выберите файл для открытия',
         directory=QtCore.QDir.homePath(),
         filter=u'XML files (*.xml)')
     inpXmlFile = QtCore.QFile(fileName)
     if inpXmlFile.open(QtCore.QFile.ReadOnly):
         self.treeModel().readFromXml(inpXmlFile)
     else:
         raise CException(u'error save to file')
Esempio n. 5
0
 def openDBF(self, fileName, fieldsList):
     dbf = None
     result = os.path.isfile(fileName)
     if result:
         dbf = Dbf(fileName, readOnly=True, encoding='cp866')
         if not dbfCheckNames(dbf, fieldsList):
             raise CException(u'файл %s\nне содержит одного из полей:\n%s' %
                              (fileName, ', '.join(fieldsList)))
         self.totalRecordCount += dbf.recordCount
         self.labelNum.setText(u'всего записей в источниках: ' +
                               str(self.totalRecordCount))
     return dbf
Esempio n. 6
0
    def on_btnSaveToFile_clicked(self):
        fileName = QtGui.QFileDialog.getSaveFileName(
            parent=self,
            caption=u'Выберите файл для сохранения',
            directory=QtCore.QDir.homePath(),
            filter=u'XML files (*.xml)')

        outXmlFile = QtCore.QFile(fileName)
        if outXmlFile.open(QtCore.QFile.WriteOnly):
            self.treeModel().writeToXml(outXmlFile)
        else:
            raise CException(u'error save to file')