ownOrganizationBlock.processRollback() ownOrganizationBlock.initQuery() ownOrganizationBlock.processQuery() tmpValuesDataSource.ownIVACond = str(ownOrganizationBlock.condIVAEntry) = 0.5 from gnue.common.events.Event import Event as GFEvent # busy clock self._object.dispatchEvent(GFEvent('beginWAIT')) ]]> = 0.5 from gnue.common.events.Event import Event as GFEvent self._object.dispatchEvent(GFEvent('endWAIT')) setStatusText("Listo") ]]> alienDocumentBlock.dateEntry = alienDocumentDataSource.getTimeStamp() if not alienDocumentBlock.getCurrentRecord().isInserted(): genericBox("No se puede grabar modificaciones",["Aceptar"]) elif not str(alienDocumentBlock.numberEntry): genericBox("Falta el número de la factura",["Aceptar"]) elif not str(alienDocumentBlock.dateEntry): genericBox("Falta la fecha de la factura",["Aceptar"]) elif not str(alienDocumentBlock.invoiceTypeEntry): genericBox("Falta el tipo de factura",["Aceptar"]) else: if alienItemBlock.getRecordCount() > 0 and len(alienItemBlock.qtyEntry) > 0 and len(alienItemBlock.productEntry) > 0: proceedingBlock.processRollback() proceedingBlock.idEntry.autofillBySequence('proceeding_id_seq') proceedingBlock.dateEntry = proceedingDataSource.getTimeStamp() alienDocumentBlock.idEntry.autofillBySequence('alien_document_id_seq') #typeValue = str(alienDocumentBlock.invoiceTypeEntry).strip().lower() #if typeValue == 'a': # alienDocumentBlock.typeEntry = "2" #elif typeValue == 'b': # alienDocumentBlock.typeEntry = "10" #elif typeValue == 'c': # alienDocumentBlock.typeEntry = "11" alienDocumentProceedingBlock.processRollback() alienDocumentProceedingBlock.proceedingEntry = str(proceedingBlock.idEntry) alienDocumentProceedingBlock.alienDocumentEntry = str(alienDocumentBlock.idEntry) alienDocumentProceedingBlock.amountEntry = str(payBlock.cashEntry) currencyMovementBlock.processRollback() currencyMovementBlock.proceedingEntry = str(proceedingBlock.idEntry) currencyMovementBlock.movementTypeEntry = "" # Revisar com queda esto currencyMovementBlock.currencyTypeEntry = "1" currencyMovementBlock.amountEntry = str(payBlock.cashEntry) alienDocumentBlock.commit() lAlienDocId = str(alienDocumentBlock.idEntry) setFocus(alienDocumentBlock.dateEntry) alienItemToUpdBlock.initQuery() alienItemToUpdBlock.alienDocumentToUpdEntry = lAlienDocId alienItemToUpdBlock.processQuery() lRecordCount = alienItemToUpdBlock.getRecordCount() for recNum in range(lRecordCount): alienItemToUpdBlock.jumpRecord(recNum) alienItemToUpdBlock.levelEntry.atomicModify(lambda x:x+round(float(str(alienItemToUpdBlock.qtyEntry)),4)) alienItemToUpdBlock.processRollback() else: alienDocumentBlock.processRollback() callTrigger('rollbackTrigger') for block in form._object._blockList: block.processRollback () alienDocumentBlock.newRecord() lAlienDocId = str(alienDocumentShowBlock.idEntry) alienDocumentProceedingShowBlock.initQuery() alienDocumentProceedingShowBlock.alienDocumentEntry = lAlienDocId alienDocumentProceedingShowBlock.processQuery() alienItemToUpdBlock.initQuery() alienItemToUpdBlock.alienDocumentToUpdEntry = lAlienDocId alienItemToUpdBlock.processQuery() lRecordCount = alienItemToUpdBlock.getRecordCount() for recNum in range(lRecordCount): alienItemToUpdBlock.jumpRecord(recNum) alienItemToUpdBlock.levelEntry.atomicModify(lambda x:x-round(float(str(alienItemToUpdBlock.qtyEntry)),4)) alienItemToUpdBlock.processRollback() lRecordCount = alienItemShowBlock.getRecordCount() for recNum in range(lRecordCount): alienItemShowBlock.jumpRecord(recNum) alienItemShowBlock.deleteRecord() alienItemBlock.commit() alienDocumentProceedingShowBlock.deleteRecord() alienDocumentShowBlock.deleteRecord() alienDocumentShowBlock.commit() alienDocumentShowBlock.processRollback() totalShowBlock.ivaEntry = "0.00" totalShowBlock.netoEntry = "0.00" totalShowBlock.totalEntry = "0.00" alienDocumentBlock.processRollback() self.exit() typeInvoice = int(str(alienDocumentShowBlock.typeEntry)) result = "" if typeInvoice == 2: result = "A" elif typeInvoice == 10: result = "B" elif typeInvoice == 11: result = "C" alienDocumentShowBlock.invoiceTypeEntry = result import hack lTNeto = 0 lTTax = 0 sum = 0 lRecords = alienItemShowDataSource.getRecords() for index in range(len(lRecords)): lRecord = lRecords[index] lQty = hack.a2f(lRecord.getField("alien_product_item.qty")) lBonus = hack.a2f(lRecord.getField("alien_item.bonus")) lDiscount = hack.a2f(lRecord.getField("alien_item.discount")) lUnitPrice = hack.a2f(lRecord.getField("alien_product_item.unit_price")) #lTax = hack.a2f(lRecord.getField("alien_item_tax.amount")) lItemPrice = (lQty * lUnitPrice) - lBonus - lDiscount lTNeto += lItemPrice lTTax += hack.a2f(lRecord.getField("alien_item_tax.amount")) #sum += lQty * lUnitPrice + lTax - lBonus - lDiscount totalShowBlock.netoEntry = str(lTNeto) totalShowBlock.ivaEntry = str(lTTax) totalShowBlock.totalEntry = str(lTNeto+lTTax) #payBlock.cashEntry = str(lTNeto+lTTax) #totalBlock.totalEntry = str(sum) #payBlock.cashEntry = str(sum) #payBlock.ctaCteEntry = "0.00" import hack #alienItemBlock.taxAmountEntry = hack.a2f(alienItemBlock.unitPriceEntry) * \ # hack.a2f(alienItemBlock.qtyEntry) * (hack.a2f(alienItemBlock.taxPercentEntry)/100) lQty = hack.a2f(alienItemBlock.qtyEntry) lBonus = hack.a2f(alienItemBlock.bonusEntry) lDiscount = hack.a2f(alienItemBlock.discountEntry) lUnitPrice = hack.a2f(alienItemBlock.unitPriceEntry) lItemPrice = (lQty * lUnitPrice) - lBonus - lDiscount alienItemBlock.taxAmountEntry = lItemPrice * hack.a2f(alienItemBlock.taxPercentEntry)/100 alienItemBlock.itemNetoEntry = lItemPrice alienItemBlock.itemTotalEntry = lItemPrice + hack.a2f(alienItemBlock.taxAmountEntry) lTNeto = 0 lTTax = 0 sum = 0 lRecords = alienItemDataSource.getRecords() for index in range(len(lRecords)): lRecord = lRecords[index] lQty = hack.a2f(lRecord.getField("alien_product_item.qty")) lBonus = hack.a2f(lRecord.getField("alien_item.bonus")) lDiscount = hack.a2f(lRecord.getField("alien_item.discount")) lUnitPrice = hack.a2f(lRecord.getField("alien_product_item.unit_price")) #lTax = hack.a2f(lRecord.getField("alien_item_tax.amount")) lItemPrice = (lQty * lUnitPrice) - lBonus - lDiscount lTNeto += lItemPrice lTTax += hack.a2f(lRecord.getField("alien_item_tax.amount")) #sum += lQty * lUnitPrice + lTax - lBonus - lDiscount totalBlock.netoEntry = str(lTNeto) totalBlock.ivaEntry = str(lTTax) totalBlock.totalEntry = str(lTNeto+lTTax) payBlock.cashEntry = str(lTNeto+lTTax) #totalBlock.totalEntry = str(sum) #payBlock.cashEntry = str(sum) payBlock.ctaCteEntry = "0.00" alienDocumentSearchBlock.processRollback() resultBlock.processRollback() resultBlock.initQuery() #resultBlock.typeREntry = "2" resultBlock.providerREntry = str(alienDocumentSearchBlock.providerSEntry) resultBlock.transportREntry = str(alienDocumentSearchBlock.transportSEntry) resultBlock.salesPersonREntry = str(alienDocumentSearchBlock.salesPersonSEntry) resultBlock.receivedREntry = str(alienDocumentSearchBlock.receivedSEntry) resultBlock.numberREntry = str(alienDocumentSearchBlock.numberSEntry)+"%" resultBlock.dateREntry = str(alienDocumentSearchBlock.dateSEntry) resultBlock.guideNumerREntry = str(alienDocumentSearchBlock.guideNumerSEntry) resultBlock.bundlesREntry = str(alienDocumentSearchBlock.bundlesSEntry) resultBlock.processQuery() genericBox("No implementado",["Aceptar"]) currentSearchIdBlock.searchId = "1" callTrigger('providerSearchTrigger') currentSearchIdBlock.searchId = "2" callTrigger('providerSearchTrigger') if str(currentSearchIdBlock.searchId) == "1": codeToSearch = str(alienDocumentSearchBlock.providerCodeSEntry) nameToSearch = str(alienDocumentSearchBlock.providerNameSEntry) else: codeToSearch = str(alienDocumentBlock.providerCodeSEntry) nameToSearch = str(alienDocumentBlock.providerNameSEntry) callTrigger('startWaitingModeTrigger') providerResultBlock.processRollback(1) providerResultBlock.initQuery() if codeToSearch: providerResultBlock.providerCodeEntry = codeToSearch+"%" if nameToSearch: providerResultBlock.providerNameEntry = nameToSearch+"%" providerResultBlock.processQuery() callTrigger('endWaitingModeTrigger') recordCount = providerResultBlock.getRecordCount() if recordCount > 1: def callback (returnValue): global block if returnValue >= 0: providerResultBlock.jumpRecord(returnValue) callTrigger('afterProviderSearchTrigger') runForm ('providerSelect.gfd', {'data': providerResultBlock, 'callback': callback}) elif recordCount == 1: providerResultBlock.jumpRecord(0) callTrigger('afterProviderSearchTrigger') if str(currentSearchIdBlock.searchId) == "1": alienDocumentSearchBlock.providerCodeSEntry = str(providerResultBlock.providerCodeEntry) alienDocumentSearchBlock.providerNameSEntry = str(providerResultBlock.providerNameEntry) alienDocumentSearchBlock.providerSEntry = str(providerResultBlock.idEntry) else: import hack alienDocumentBlock.providerCodeSEntry = str(providerResultBlock.providerCodeEntry) alienDocumentBlock.providerNameSEntry = str(providerResultBlock.providerNameEntry) alienDocumentBlock.providerEntry = str(providerResultBlock.idEntry) clientIvaTaxProfle = int(str(tmpValuesDataSource.ownIVACond)) providerIvaTaxProfile = int(str(providerResultBlock.providerIvaTaxProfileEntry)) alienDocumentBlock.invoiceTypeEntry = hack.calcInvoiceType(clientIvaTaxProfle, providerIvaTaxProfile) callTrigger('invoiceTypeValidation') currentSearchIdBlock.searchId = "1" callTrigger('transportSearchTrigger') currentSearchIdBlock.searchId = "2" callTrigger('transportSearchTrigger') if str(currentSearchIdBlock.searchId) == "1": codeToSearch = str(alienDocumentSearchBlock.transportCodeSEntry) nameToSearch = str(alienDocumentSearchBlock.transportNameSEntry) else: codeToSearch = str(alienDocumentBlock.transportCodeSEntry) nameToSearch = str(alienDocumentBlock.transportNameSEntry) callTrigger('startWaitingModeTrigger') transportResultBlock.initQuery() transportResultBlock.transportCodeEntry = codeToSearch+"%" transportResultBlock.transportNameEntry = nameToSearch+"%" transportResultBlock.processQuery() callTrigger('endWaitingModeTrigger') recordCount = transportResultBlock.getRecordCount() if recordCount > 1: def callback (returnValue): global block if returnValue >= 0: transportResultBlock.jumpRecord(returnValue) callTrigger('afterTransportSearchTrigger') runForm ('transportSelect.gfd', {'data': transportResultBlock, 'callback': callback}) elif recordCount == 1: transportResultBlock.jumpRecord(0) callTrigger('afterTransportSearchTrigger') if str(currentSearchIdBlock.searchId) == "1": alienDocumentSearchBlock.transportCodeSEntry = str(transportResultBlock.transportCodeEntry) alienDocumentSearchBlock.transportNameSEntry = str(transportResultBlock.transportNameEntry) alienDocumentSearchBlock.transportEntry = str(transportResultBlock.idEntry) else: alienDocumentBlock.transportCodeSEntry = str(transportResultBlock.transportCodeEntry) alienDocumentBlock.transportNameSEntry = str(transportResultBlock.transportNameEntry) alienDocumentBlock.transportEntry = str(transportResultBlock.idEntry) codeToSearch = str(alienItemBlock.productCodeEntry) nameToSearch = str(alienItemBlock.productNameEntry) callTrigger('startWaitingModeTrigger') productResultBlock.initQuery() productResultBlock.prodCodeEntry = codeToSearch+"%" productResultBlock.prodNameEntry = nameToSearch+"%" productResultBlock.processQuery() callTrigger('endWaitingModeTrigger') recordCount = productResultBlock.getRecordCount() if recordCount > 1: def callback (returnValue): global block if returnValue >= 0: productResultBlock.jumpRecord(returnValue) callTrigger('afterProductSearchTrigger') runForm ('productSelect.gfd', {'data': productResultBlock, 'callback': callback}) elif recordCount == 1: productResultBlock.jumpRecord(0) callTrigger('afterProductSearchTrigger') alienItemBlock.productCodeEntry = str(productResultBlock.prodCodeEntry) alienItemBlock.productNameEntry = str(productResultBlock.prodNameEntry) alienItemBlock.productEntry = str(productResultBlock.prodIdEntry) alienItemBlock.taxPercentEntry = str(productResultBlock.prodIVATaxEntry) alienItemBlock.productCodeEntry = "" alienItemBlock.productNameEntry = "" alienItemBlock.qtyEntry = 0.00 alienItemBlock.unitPriceEntry = 0.00 alienItemBlock.productEntry = "0" alienItemBlock.taxAmountEntry = 0 alienItemBlock.taxPercentEntry = 0 alienItemBlock.discountEntry = 0.00 alienItemBlock.itemTotalEntry = 0.00 callTrigger('totalCalcTrigger') import hack alienDocumentShowBlock.processRollback() if resultBlock.getRecordCount() > 0 and not resultBlock.getCurrentRecord().isEmpty(): alienDocumentShowBlock.initQuery() alienDocumentShowBlock.idEntry = ("%s" % resultBlock.idREntry) alienDocumentShowBlock.processQuery() recordCount = alienItemShowBlock.getRecordCount() alienItemShowBlock.firstRecord() setParameter('invoiceDate',str(alienDocumentShowBlock.dateEntry)) #for index in range(recordCount): # alienItemShowBlock.taxPercentEntry = (hack.a2f(alienItemShowBlock.taxAmountEntry) / (hack.a2f(alienItemShowBlock.unitPriceEntry) * \ # hack.a2f(alienItemShowBlock.qtyEntry))) * 100 # if index != recordCount-1: # alienItemShowBlock.nextRecord() runForm('provider.gfd') runForm('product.gfd')