示例#1
0
 public function generateReport()
 {
     $customer = \ZippyERP\ERP\Entity\Customer::load($this->headerdata["customer"]);
     $header = array('date' => date('d.m.Y', $this->document_date), "document_number" => $this->document_number, "customer" => $customer->customer_name, "description" => $this->headerdata["description"], 'startdate' => date('d.m.Y', $this->headerdata["startdate"]), 'enddate' => date('d.m.Y', $this->headerdata["enddate"]), "amount" => H::fm($this->headerdata["amount"]));
     $report = new \ZippyERP\ERP\Report('contract.tpl');
     $html = $report->generate($header);
     return $html;
 }
示例#2
0
 public function generateReport()
 {
     $myfirm = \ZippyERP\System\System::getOptions("firmdetail");
     $myaccount = \ZippyERP\ERP\Entity\MoneyFund::load($this->headerdata['bankaccount']);
     $mybank = \ZippyERP\ERP\Entity\Bank::load($myaccount->bank);
     $customer = \ZippyERP\ERP\Entity\Customer::load($this->headerdata['customer']);
     $cbank = \ZippyERP\ERP\Entity\Bank::load($customer->bank);
     $header = array('date' => date('d.m.Y', $this->document_date), 'myname' => $myfirm['name'], 'mycode' => $myfirm['code'], 'mybankaccount' => $myaccount->bankaccount, 'mybank' => $mybank->bank_name, 'mybankcode' => $mybank->mfo, 'cname' => $customer->customer_name, 'ccode' => $customer->code, 'cbankaccount' => $customer->bankaccount, 'cbank' => $cbank->bank_name, 'cbankcode' => $cbank->mfo, "document_number" => $this->document_number, "document_date" => date('Y.m.d', $this->document_date), "notes" => $this->headerdata['notes'], "amount" => H::fm($this->amount), "amountstr" => \ZippyERP\ERP\Util::ucfirst(\ZippyERP\ERP\Util::money2str($this->amount / 100)));
     $report = new \ZippyERP\ERP\Report('transferorder.tpl');
     $html = $report->generate($header, array());
     return $html;
 }
示例#3
0
 public function generateReport()
 {
     $customer = \ZippyERP\ERP\Entity\Customer::load($this->headerdata["customer"]);
     $i = 1;
     $detail = array();
     foreach ($this->detaildata as $value) {
         $detail[] = array("no" => $i++, "itemname" => $value['itemname'], "measure" => $value['measure_name'], "quantity" => $value['quantity'] / 1000, "price" => H::fm($value['price']), "pricends" => H::fm($value['pricends']), "amount" => H::fm($value['amount']));
     }
     $firm = \ZippyERP\System\System::getOptions("firmdetail");
     $header = array('date' => date('d.m.Y', $this->document_date), "firmname" => $firm['name'], "firmcode" => $firm['code'], "customername" => $this->headerdata["customername"], "document_number" => $this->document_number, "totalnds" => H::fm($this->headerdata["totalnds"]), "total" => H::fm($this->headerdata["total"]));
     $report = new \ZippyERP\ERP\Report('returngoodsreceipt.tpl');
     $html = $report->generate($header, $detail);
     return $html;
 }
示例#4
0
 public function doclistOnRow($row)
 {
     $item = $row->getDataItem();
     $supplier = Customer::load($item->intattr1);
     $item = $item->cast();
     $row->add(new Label('number', $item->document_number));
     $row->add(new Label('date', date('d-m-Y', $item->document_date)));
     $row->add(new Label('supplier', $supplier ? $supplier->customer_name : ""));
     $row->add(new Label('amount', $item->amount > 0 ? H::fm($item->amount) : ""));
     $row->add(new Label('payment', $item->intattr2 > 0 ? H::fm($item->intattr2) : ""));
     $row->add(new Label('state', Document::getStateName($item->state)));
     $row->add(new ClickLink('show'))->setClickHandler($this, 'showOnClick');
     $row->add(new ClickLink('edit'))->setClickHandler($this, 'editOnClick');
     //закрытый период
     if ($item->updated < strtotime("2013-01-01")) {
         $row->edit->setVisible(false);
         $row->cancel->setVisible(false);
     }
 }
示例#5
0
 public function addсbtnOnClick($sender)
 {
     $id = $this->docform->e_сlist->getKey();
     if (isset($this->_carr[$id])) {
         $this->setError('Дублирование строки');
         return;
     }
     $c = Customer::load($id);
     $c->val = 100 * $this->docform->e_сamount->getText();
     $c->op = $this->docform->e_cop->getValue();
     $this->_carr[$id] = $c;
     $this->docform->ctable->Reload();
     $this->docform->e_сamount->setText('0');
     $this->docform->e_сlist->setKey(0);
     $this->docform->e_сlist->setText('');
 }
示例#6
0
 public function getItem($id)
 {
     return Customer::load($id);
 }
示例#7
0
 /**
  * Експорт  в  ГНАУ  формат XML
  */
 public function export($type)
 {
     $common = System::getOptions("common");
     $firm = System::getOptions("firmdetail");
     $jf = ($common['juridical'] == true ? "J" : "F") . "1201004";
     $edrpou = (string) sprintf("%10d", $firm['edrpou']);
     //2301 0011111111 F1201004 1 00 0000045 1 03 2015 2301.xml
     $number = (string) sprintf('%07d', 1);
     $filename = $firm['gni'] . $edrpou . $jf . "100{$number}1" . date('mY', $this->document_date) . $firm['gni'] . ".xml";
     $filename = str_replace(' ', '0', $filename);
     $customer = \ZippyERP\ERP\Entity\Customer::load($this->headerdata["customer"]);
     $xml = '<?xml version="1.0" encoding="windows-1251"?>';
     $xml .= '<DECLAR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="' . $jf . '.xsd">';
     $xml .= "<DECLARHEAD>";
     $xml .= "<TIN>{$firm['edrpou']}</TIN>";
     $xml .= "<C_DOC>J12</C_DOC>";
     $xml .= "<C_DOC_SUB>010</C_DOC_SUB> ";
     $xml .= "<C_DOC_VER>4</C_DOC_VER>";
     $xml .= "<C_DOC_TYPE>0</C_DOC_TYPE>";
     $xml .= "<C_DOC_CNT>1</C_DOC_CNT>";
     $xml .= "<C_REG>" . substr($firm['gni'], 0, 2) . "</C_REG> ";
     $xml .= "<C_RAJ>" . substr($firm['gni'], 2, 2) . "</C_RAJ>";
     $xml .= "<PERIOD_MONTH>" . date(m) . "</PERIOD_MONTH>";
     $xml .= "<PERIOD_TYPE>1</PERIOD_TYPE>";
     $xml .= "<PERIOD_YEAR>" . date('Y') . "</PERIOD_YEAR>";
     $xml .= "<C_STI_ORIG>{$firm['gni']}</C_STI_ORIG>";
     $xml .= "<C_DOC_STAN>1</C_DOC_STAN>";
     $xml .= "<D_FILL>" . (string) date('dmY') . "</D_FILL>";
     $xml .= "<SOFTWARE>Zippy ERP</SOFTWARE>";
     $xml .= "</DECLARHEAD>";
     $xml .= "<DECLARBODY>";
     $xml .= "<HORIG>1</HORIG>";
     $xml .= "<HFILL>" . (string) date('dmY', $this->document_date) . "</HFILL>";
     $xml .= "<HNUM>" . $this->document_number . "</HNUM>";
     $xml .= "<HNAMESEL>{$firm['name']}</HNAMESEL>";
     $xml .= "<HKSEL>{$firm['inn']}</HKSEL>";
     $xml .= "<HLOCSEL>" . $firm['city'] . " " . $firm['street'] . "</HLOCSEL>";
     if (strlen($firm['phone']) > 0) {
         $xml .= "<HTELSEL>{$firm['phone']}</HTELSEL>";
     }
     $xml .= "<HNAMEBUY>{$customer->customer_name}</HNAMEBUY>";
     $xml .= "<HKBUY>{$customer->inn}</HKBUY>";
     $address = strlen($customer->laddress) > 0 ? $customer->laddress : $customer->faddress;
     $xml .= "<HLOCBUY>{$address}</HLOCBUY>";
     if (strlen($this->headerdata['based']) > 0) {
         $xml .= "<H01G1S>{$this->headerdata['based']}</H01G1S>";
     }
     if (strlen($this->headerdata['ernn']) == true) {
         $xml .= "<HERPN>true</HERPN>";
     }
     $num = 0;
     foreach ($this->detaildata as $value) {
         $num++;
         $xml .= "<RXXXXG4S ROWNUM=\"{$num}\">{$value['measure_name']}</RXXXXG4S>";
         $xml .= "<RXXXXG105_2S  ROWNUM=\"{$num}\">{$value['measure_code']}</RXXXXG105_2S>";
         if (strlen($value['uktzed'] > 0)) {
             $xml .= "<RXXXXG4  ROWNUM=\"{$num}\">{$value['uktzed']}</RXXXXG4>";
         }
         $xml .= "<RXXXXG3S ROWNUM=\"{$num}\">{$value['itemname']}</RXXXXG3S>";
         $xml .= "<RXXXXG5  ROWNUM=\"{$num}\">{$value['quantity']}</RXXXXG5>";
         $xml .= "<RXXXXG6  ROWNUM=\"{$num}\">" . H::fm($value['price']) . "</RXXXXG6>";
         $xml .= "<RXXXXG7  ROWNUM=\"{$num}\">" . H::fm($value['quantity'] * $value['price']) . "</RXXXXG7>";
     }
     $total = H::fm($this->headerdata["total"]);
     $totalnds = H::fm($this->headerdata["totalnds"]);
     $all = $total + $totalnds;
     $xml .= "<R01G7>" . ($total - $totalnds) . "</R01G7>";
     $xml .= "<R01G11>{$total}</R01G11>";
     $xml .= "<R03G7>{$totalnds}</R03G7>";
     $xml .= "<R03G11>{$totalnds}</R03G11>";
     $xml .= "<R04G7>" . $total . "</R04G7>";
     $xml .= "<R04G11>" . $total . "</R04G11>";
     $xml .= "</DECLARBODY>";
     $xml .= "</DECLAR>";
     $xml = iconv("UTF-8", "WINDOWS-1251", $xml);
     return array("filename" => $filename, "content" => $xml);
 }