/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('update_customerchargecard'); if (!$this->getRecordNo()) { throw new InvalidArgumentException('Record No is required for update'); } $xml->writeAttribute('recordno', $this->getRecordNo(), true); $xml->writeElement('exp_month', $this->getExpirationMonth()); $xml->writeElement('exp_year', $this->getExpirationYear()); $xml->writeElement('description', $this->getDescription()); if ($this->isActive() === true) { $xml->writeElement('status', 'active'); } elseif ($this->isActive() === false) { $xml->writeElement('status', 'inactive'); } if ($this->getAddressLine1() || $this->getAddressLine2() || $this->getCity() || $this->getStateProvince() || $this->getZipPostalCode() || $this->getCountry()) { $xml->startElement('mailaddress'); $xml->writeElement('address1', $this->getAddressLine1()); $xml->writeElement('address2', $this->getAddressLine2()); $xml->writeElement('city', $this->getCity()); $xml->writeElement('state', $this->getStateProvince()); $xml->writeElement('zip', $this->getZipPostalCode()); $xml->writeElement('country', $this->getCountry()); $xml->endElement(); //mailaddress } $xml->writeElement('defaultcard', $this->isDefaultCard()); $xml->writeElement('usebilltoaddr', $this->isBillToContactAddressUsedForVerification()); $xml->endElement(); //update_customerchargecard $xml->endElement(); //function }
/** * Write the inspect block XML * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('inspect'); $xml->writeAttribute('detail', $this->writeXmlShowDetail()); $xml->writeElement('object', $this->getObjectName(), true); $xml->endElement(); //inspect $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_item'); if (!$this->getItemId()) { throw new InvalidArgumentException('Item ID is required for delete'); } $xml->writeAttribute('itemid', $this->getItemId()); $xml->endElement(); //delete_item $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_expensetype'); if (!$this->getExpenseType()) { throw new InvalidArgumentException('Expense Type is required for delete'); } $xml->writeAttribute('expensetype', $this->getExpenseType()); $xml->endElement(); //delete_expensetype $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_supdocfolder'); if (!$this->getFolderName()) { throw new InvalidArgumentException('Attachments Folder Name is required for delete'); } $xml->writeAttribute('key', $this->getFolderName()); $xml->endElement(); //delete_supdocfolder $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_task'); if (!$this->getRecordNo()) { throw new InvalidArgumentException('Task Record No is required for delete'); } $xml->writeAttribute('key', $this->getRecordNo()); $xml->endElement(); //delete_task $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_statglaccount'); if (!$this->getAccountNo()) { throw new InvalidArgumentException('Account No is required for delete'); } $xml->writeAttribute('glaccountno', $this->getAccountNo()); $xml->endElement(); //delete_statglaccount $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_customerchargecard'); if (!$this->getRecordNo()) { throw new InvalidArgumentException('Record No is required for delete'); } $xml->writeAttribute('recordno', $this->getRecordNo()); $xml->endElement(); //delete_customerchargecard $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_potransaction'); if (!$this->getDocumentId()) { throw new InvalidArgumentException('Document ID is required for delete'); } $xml->writeAttribute('key', $this->getDocumentId()); $xml->endElement(); //delete_potransaction $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('delete_contact'); if (!$this->getContactName()) { throw new InvalidArgumentException('Contact Name is required for delete'); } $xml->writeAttribute('contactname', $this->getContactName()); $xml->endElement(); //delete_contact $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('update'); $xml->startElement('CLASS'); if (!$this->getClassId()) { throw new InvalidArgumentException('Class ID is required for update'); } $xml->writeElement('CLASSID', $this->getClassId(), true); $xml->writeElement('NAME', $this->getClassName()); $xml->writeElement('DESCRIPTION', $this->getDescription()); $xml->writeElement('PARENTID', $this->getParentClassId()); if ($this->isActive() === true) { $xml->writeElement('STATUS', 'active'); } elseif ($this->isActive() === false) { $xml->writeElement('STATUS', 'inactive'); } $this->writeXmlImplicitCustomFields($xml); $xml->endElement(); //CLASS $xml->endElement(); //update $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('update_supdoc'); if (!$this->getAttachmentsId()) { throw new InvalidArgumentException('Attachments ID is required for update'); } $xml->writeElement('supdocid', $this->getAttachmentsId(), true); $xml->writeElement('supdocname', $this->getAttachmentsName()); $xml->writeElement('supdocfoldername', $this->getAttachmentFolderName()); $xml->writeElement('supdocdescription', $this->getDescription()); if (count($this->getFiles()) > 0) { $xml->startElement('attachments'); foreach ($this->getFiles() as $file) { if ($file instanceof AttachmentInterface) { $file->writeXml($xml); } } $xml->endElement(); //attachments } $xml->endElement(); //update_supdoc $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('create'); $xml->startElement('TIMESHEET'); if (!$this->getEmployeeId()) { throw new InvalidArgumentException('Employee ID is required for create'); } $xml->writeElement('EMPLOYEEID', $this->getEmployeeId(), true); if (!$this->getBeginDate()) { throw new InvalidArgumentException('Begin Date is required for create'); } $xml->writeElement('BEGINDATE', $this->getBeginDate(), true); $xml->writeElement('DESCRIPTION', $this->getDescription()); $xml->writeElement('SUPDOCID', $this->getAttachmentsId()); $xml->writeElement('STATE', $this->getAction()); $xml->startElement('TIMESHEETENTRIES'); if (count($this->getEntries()) > 0) { foreach ($this->getEntries() as $entry) { $entry->writeXml($xml); } } else { throw new InvalidArgumentException('Timesheet must have at least 1 entry'); } $xml->endElement(); //TIMESHEETENTRIES $this->writeXmlImplicitCustomFields($xml); $xml->endElement(); //TIMESHEET $xml->endElement(); //create $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('create'); $xml->startElement('GLBATCH'); $xml->writeElement('JOURNAL', $this->getJournalSymbol(), true); $xml->writeElement('BATCH_DATE', $this->getPostingDate(), true); $xml->writeElement('REVERSEDATE', $this->getReverseDate()); $xml->writeElement('BATCH_TITLE', $this->getDescription(), true); $xml->writeElement('HISTORY_COMMENT', $this->getHistoryComment()); $xml->writeElement('REFERENCENO', $this->getReferenceNumber()); $xml->writeElement('SUPDOCID', $this->getAttachmentsId()); $xml->writeElement('STATE', $this->getAction()); $this->writeXmlImplicitCustomFields($xml); $xml->startElement('ENTRIES'); if (count($this->getLines()) >= 1) { foreach ($this->getLines() as $entry) { $entry->writeXml($xml); } } else { throw new InvalidArgumentException('Statistical Journal Entry must have at least 1 line'); } $xml->endElement(); //ENTRIES $xml->endElement(); //GLBATCH $xml->endElement(); //create $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('update'); $xml->startElement('DEPARTMENT'); if (!$this->getDepartmentId()) { throw new InvalidArgumentException('Department ID is required for update'); } $xml->writeElement('DEPARTMENTID', $this->getDepartmentId(), true); $xml->writeElement('TITLE', $this->getDepartmentName()); $xml->writeElement('PARENTID', $this->getParentDepartmentId()); $xml->writeElement('SUPERVISORID', $this->getManagerEmployeeId()); $xml->writeElement('CUSTTITLE', $this->getDepartmentTitle()); if ($this->isActive() === true) { $xml->writeElement('STATUS', 'active'); } elseif ($this->isActive() === false) { $xml->writeElement('STATUS', 'inactive'); } $this->writeXmlImplicitCustomFields($xml); $xml->endElement(); //DEPARTMENT $xml->endElement(); //update $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('consolidate'); if (!$this->getReportingBookId()) { throw new InvalidArgumentException('Reporting Book ID is required to create consolidation'); } $xml->writeElement('bookid', $this->getReportingBookId(), true); if (!$this->getReportingPeriodName()) { throw new InvalidArgumentException('Reporting Period Name is required to create consolidation'); } $xml->writeElement('reportingperiodname', $this->getReportingPeriodName(), true); $xml->writeElement('offline', $this->isProcessOffline()); $xml->writeElement('updatesucceedingperiods', $this->isUpdateSucceedingPeriods()); $xml->writeElement('changesonly', $this->isChangesOnly()); $xml->writeElement('email', $this->getNotificationEmail()); if (count($this->getEntities()) > 0) { $xml->startElement('entities'); foreach ($this->getEntities() as $entity) { $entity->writeXml($xml); } $xml->endElement(); //entities } $xml->endElement(); //consolidate $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('update'); $xml->startElement('APACCOUNTLABEL'); if (!$this->getAccountLabel()) { throw new InvalidArgumentException('Account Label is required for update'); } $xml->writeElement('ACCOUNTLABEL', $this->getAccountLabel(), true); $xml->writeElement('DESCRIPTION', $this->getDescription()); $xml->writeElement('GLACCOUNTNO', $this->getGlAccountNo()); $xml->writeElement('OFFSETGLACCOUNTNO', $this->getOffsetGlAccountNo()); if ($this->isActive() === true) { $xml->writeElement('STATUS', 'active'); } elseif ($this->isActive() === false) { $xml->writeElement('STATUS', 'inactive'); } $xml->endElement(); //APACCOUNTLABEL $xml->endElement(); //update $xml->endElement(); //function }
/** * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('apply_arpayment'); if (!$this->getRecordNo()) { throw new InvalidArgumentException('Record No is required for apply'); } $xml->writeElement('arpaymentkey', $this->getRecordNo(), true); if (!$this->getReceivedDate()) { throw new InvalidArgumentException('Received Date is required for apply'); } $xml->startElement('paymentdate'); $xml->writeDateSplitElements($this->getReceivedDate(), true); $xml->endElement(); //paymentdate $xml->writeElement('batchkey', $this->getSummaryRecordNo()); $xml->writeElement('overpaylocid', $this->getOverpaymentLocationId()); $xml->writeElement('overpaydeptid', $this->getOverpaymentDepartmentId()); if (count($this->getApplyToTransactions()) > 0) { $xml->startElement('arpaymentitems'); foreach ($this->getApplyToTransactions() as $applyToTransaction) { $applyToTransaction->writeXml($xml); } $xml->endElement(); //arpaymentitems } $xml->endElement(); //apply_arpayment $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('update'); $xml->startElement('ALLOCATION'); if (!$this->getAllocationId()) { throw new InvalidArgumentException('Allocation ID is required for update'); } $xml->writeElement('ALLOCATIONID', $this->getAllocationId(), true); $xml->writeElement('TYPE', $this->getAllocateBy()); $xml->writeElement('DESCRIPTION', $this->getDescription()); $xml->writeElement('DOCNUMBER', $this->getDocumentNo()); $xml->writeElement('SUPDOCID', $this->getAttachmentsId()); if ($this->isActive() === true) { $xml->writeElement('STATUS', 'active'); } elseif ($this->isActive() === false) { $xml->writeElement('STATUS', 'inactive'); } if (count($this->getLines()) > 0) { // Completely replaces any existing lines $xml->startElement('ALLOCATIONENTRIES'); foreach ($this->getLines() as $allocationLine) { $allocationLine->writeXml($xml); } $xml->endElement(); //ALLOCATIONENTRIES } $xml->endElement(); //ALLOCATION $xml->endElement(); //update $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('create_supdoc'); // Attachments ID is not required if auto-numbering is configured in module $xml->writeElement('supdocid', $this->getAttachmentsId(), true); // System sets value to 'Unnamed' if left null $xml->writeElement('supdocname', $this->getAttachmentsName(), true); if (!$this->getAttachmentFolderName()) { // System does not pick up user preferences for default folder // Nor does it pick up user's related employee default folder throw new InvalidArgumentException('Attachment Folder Name is required for create'); } $xml->writeElement('supdocfoldername', $this->getAttachmentFolderName(), true); $xml->writeElement('supdocdescription', $this->getDescription()); if (count($this->getFiles()) > 0) { $xml->startElement('attachments'); foreach ($this->getFiles() as $file) { if ($file instanceof AttachmentInterface) { $file->writeXml($xml); } } $xml->endElement(); //attachments } $xml->endElement(); //create_supdoc $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('create_aradjustmentbatch'); if (!$this->getTitle()) { throw new InvalidArgumentException('Title is required for create'); } $xml->writeElement('batchtitle', $this->getTitle(), true); if (!$this->getGlPostingDate()) { throw new InvalidArgumentException('GL Posting Date is required for create'); } $xml->startElement('datecreated'); $xml->writeDateSplitElements($this->getGlPostingDate(), true); $xml->endElement(); //datecreated /*if (count($this->getApAdjustments()) > 0) { foreach ($this->getApAdjustments() as $apAdjustment) { $bill->writeXml($xml); } }*/ $xml->endElement(); //create_aradjustmentbatch $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('create'); $xml->startElement('EEACCOUNTLABEL'); if (!$this->getExpenseType()) { throw new InvalidArgumentException('Expense Type is required for create'); } $xml->writeElement('ACCOUNTLABEL', $this->getExpenseType(), true); if (!$this->getDescription()) { throw new InvalidArgumentException('Description is required for create'); } $xml->writeElement('DESCRIPTION', $this->getDescription(), true); if (!$this->getGlAccountNo()) { throw new InvalidArgumentException('GL Account is required for create'); } $xml->writeElement('GLACCOUNTNO', $this->getGlAccountNo(), true); $xml->writeElement('OFFSETGLACCOUNTNO', $this->getOffsetGlAccountNo()); $xml->writeElement('ITEMID', $this->getItemId()); if ($this->isActive() === true) { $xml->writeElement('STATUS', 'active'); } elseif ($this->isActive() === false) { $xml->writeElement('STATUS', 'inactive'); } $this->writeXmlImplicitCustomFields($xml); $xml->endElement(); //EEACCOUNTLABEL $xml->endElement(); //create $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('create_arpaymentbatch'); if (!$this->getTitle()) { throw new InvalidArgumentException('Title is required for create'); } $xml->writeElement('batchtitle', $this->getTitle(), true); if ($this->getUndepositedFundsGlAccountNo()) { $xml->writeElement('undepfundsacct', $this->getUndepositedFundsGlAccountNo()); } elseif ($this->getBankAccountId()) { $xml->writeElement('bankaccountid', $this->getBankAccountId()); } if (!$this->getGlPostingDate()) { throw new InvalidArgumentException('GL Posting Date is required for create'); } $xml->startElement('datecreated'); $xml->writeDateSplitElements($this->getGlPostingDate(), true); $xml->endElement(); //datecreated $xml->endElement(); //create_arpaymentbatch $xml->endElement(); //function }
/** * Write the ccpayitem block XML * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('updateccpayitem'); if (!$this->getLineNo()) { throw new InvalidArgumentException('Line No is required for update'); } $xml->writeAttribute('line_num', $this->getLineNo()); if (!empty($this->getAccountLabel())) { $xml->writeElement('accountlabel', $this->getAccountLabel()); } else { $xml->writeElement('glaccountno', $this->getGlAccountNumber()); } $xml->writeElement('description', $this->getMemo()); $xml->writeElement('paymentamount', $this->getTransactionAmount()); $xml->writeElement('departmentid', $this->getDepartmentId()); $xml->writeElement('locationid', $this->getLocationId()); $xml->writeElement('customerid', $this->getCustomerId()); $xml->writeElement('vendorid', $this->getVendorId()); $xml->writeElement('employeeid', $this->getEmployeeId()); $xml->writeElement('projectid', $this->getProjectId()); $xml->writeElement('itemid', $this->getItemId()); $xml->writeElement('classid', $this->getClassId()); $xml->writeElement('contractid', $this->getContractId()); $xml->writeElement('warehouseid', $this->getWarehouseId()); $this->writeXmlExplicitCustomFields($xml); $xml->endElement(); //updateccpayitem }
/** * Write the sortfield block XML * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('sortfield'); $xml->writeAttribute('order', $this->getOrderBy()); $xml->text($this->getFieldName()); $xml->endElement(); //sortfield }
/** * Write the function block XML * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->writeElement('getAPISession', null, true); $xml->endElement(); //function }
/** * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('create_arpayment'); if (!$this->getCustomerId()) { throw new InvalidArgumentException('Customer ID is required for create'); } $xml->writeElement('customerid', $this->getCustomerId(), true); $xml->writeElement('paymentamount', $this->getTransactionPaymentAmount(), true); $xml->writeElement('translatedamount', $this->getBasePaymentAmount()); if ($this->getUndepositedFundsGlAccountNo()) { $xml->writeElement('undepfundsacct', $this->getUndepositedFundsGlAccountNo()); } elseif ($this->getBankAccountId()) { $xml->writeElement('bankaccountid', $this->getBankAccountId()); } $xml->writeElement('refid', $this->getReferenceNumber()); $xml->writeElement('overpaylocid', $this->getOverpaymentLocationId()); $xml->writeElement('overpaydeptid', $this->getOverpaymentDepartmentId()); if (!$this->getReceivedDate()) { throw new InvalidArgumentException('Received Date is required for create'); } $xml->startElement('datereceived'); $xml->writeDateSplitElements($this->getReceivedDate(), true); $xml->endElement(); //datereceived if (!$this->getPaymentMethod()) { throw new InvalidArgumentException('Payment Method is required for create'); } $xml->writeElement('paymentmethod', $this->getPaymentMethod(), true); $xml->writeElement('basecurr', $this->getBaseCurrency()); $xml->writeElement('currency', $this->getTransactionCurrency()); if ($this->getExchangeRateDate()) { $xml->startElement('exchratedate'); $xml->writeDateSplitElements($this->getExchangeRateDate(), true); $xml->endElement(); } if ($this->getExchangeRateType()) { $xml->writeElement('exchratetype', $this->getExchangeRateType()); } elseif ($this->getExchangeRateValue()) { $xml->writeElement('exchrate', $this->getExchangeRateValue()); } elseif ($this->getBaseCurrency() || $this->getTransactionCurrency()) { $xml->writeElement('exchratetype', $this->getExchangeRateType(), true); } $xml->writeElement('cctype', $this->getCreditCardType()); $xml->writeElement('authcode', $this->getAuthorizationCode()); if (count($this->getApplyToTransactions()) > 0) { foreach ($this->getApplyToTransactions() as $applyToTransaction) { $applyToTransaction->writeXml($xml); } } //TODO online payment methods $xml->endElement(); //create_arpayment $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('update_cctransaction'); if (!$this->getRecordNo()) { throw new InvalidArgumentException('Record No is required for update'); } $xml->writeAttribute('key', $this->getRecordNo()); if ($this->getTransactionDate()) { $xml->startElement('paymentdate'); $xml->writeDateSplitElements($this->getTransactionDate()); $xml->endElement(); //paymentdate } $xml->writeElement('referenceno', $this->getReferenceNumber()); $xml->writeElement('payee', $this->getPayee()); $xml->writeElement('description', $this->getDescription()); $xml->writeElement('supdocid', $this->getAttachmentsId()); $xml->writeElement('currency', $this->getTransactionCurrency()); if ($this->getExchangeRateValue()) { $xml->writeElement('exchrate', $this->getExchangeRateValue()); } elseif ($this->getExchangeRateDate() || $this->getExchangeRateType()) { if ($this->getExchangeRateDate()) { $xml->startElement('exchratedate'); $xml->writeDateSplitElements($this->getExchangeRateDate(), true); $xml->endElement(); } $xml->writeElement('exchratetype', $this->getExchangeRateType(), true); } $this->writeXmlExplicitCustomFields($xml); if (count($this->getLines()) > 0) { $xml->startElement('updateccpayitems'); foreach ($this->getLines() as $line) { $line->writeXml($xml); } $xml->endElement(); //updateccpayitems } $xml->endElement(); //update_cctransaction $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml * @throw InvalidArgumentException */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('record_otherreceipt'); $xml->startElement('paymentdate'); $xml->writeDateSplitElements($this->getTransactionDate()); $xml->endElement(); //paymentdate $xml->writeElement('payee', $this->getPayer(), true); $xml->startElement('receiveddate'); $xml->writeDateSplitElements($this->getReceiptDate()); $xml->endElement(); //receiveddate $xml->writeElement('paymentmethod', $this->getPaymentMethod(), true); if ($this->getBankAccountId() || $this->getDepositDate()) { $xml->writeElement('bankaccountid', $this->getBankAccountId(), true); if ($this->getDepositDate()) { $xml->startElement('depositdate'); $xml->writeDateSplitElements($this->getDepositDate(), true); $xml->endElement(); //depositdate } } else { $xml->writeElement('undepglaccountno', $this->getUndepositedFundsGlAccountNo(), true); } $xml->writeElement('refid', $this->getTransactionNo()); $xml->writeElement('description', $this->getDescription()); $xml->writeElement('supdocid', $this->getAttachmentsId()); $xml->writeElement('currency', $this->getTransactionCurrency()); if ($this->getExchangeRateValue()) { $xml->writeElement('exchrate', $this->getExchangeRateValue()); } elseif ($this->getExchangeRateDate() || $this->getExchangeRateType()) { if ($this->getExchangeRateDate()) { $xml->startElement('exchratedate'); $xml->writeDateSplitElements($this->getExchangeRateDate(), true); $xml->endElement(); } $xml->writeElement('exchratetype', $this->getExchangeRateType(), true); } $this->writeXmlExplicitCustomFields($xml); $xml->startElement('receiptitems'); if (count($this->getLines()) > 0) { foreach ($this->getLines() as $line) { $line->writeXml($xml); } } else { throw new InvalidArgumentException('CM Other Receipt must have at least 1 line'); } $xml->endElement(); //receiptitems $xml->endElement(); //record_otherreceipt $xml->endElement(); //function }
/** * Write the function block XML * * @param XMLWriter $xml */ public function writeXml(XMLWriter &$xml) { $xml->startElement('function'); $xml->writeAttribute('controlid', $this->getControlId()); $xml->startElement('getDdsObjects'); $xml->endElement(); //getDdsObjects $xml->endElement(); //function }