本文整理匯總了PHP中Facture::initAsSpecimen方法的典型用法代碼示例。如果您正苦於以下問題:PHP Facture::initAsSpecimen方法的具體用法?PHP Facture::initAsSpecimen怎麽用?PHP Facture::initAsSpecimen使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Facture
的用法示例。
在下文中一共展示了Facture::initAsSpecimen方法的13個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: elseif
} elseif ($tmp == 'NotConfigured') {
print $langs->trans($tmp);
} else {
print $tmp;
}
print '</td>' . "\n";
print '<td align="center">';
//print "> ".$conf->global->FACTURE_ADDON." - ".$file;
if ($conf->global->FACTURE_ADDON == $file || $conf->global->FACTURE_ADDON . '.php' == $file) {
print img_picto($langs->trans("Activated"), 'switch_on');
} else {
print '<a href="' . $_SERVER["PHP_SELF"] . '?action=setmod&value=' . preg_replace('/\\.php$/', '', $file) . '&scandir=' . $module->scandir . '&label=' . urlencode($module->name) . '" alt="' . $langs->trans("Default") . '">' . img_picto($langs->trans("Disabled"), 'switch_off') . '</a>';
}
print '</td>';
$facture = new Facture($db);
$facture->initAsSpecimen();
// Example for standard invoice
$htmltooltip = '';
$htmltooltip .= '' . $langs->trans("Version") . ': <b>' . $module->getVersion() . '</b><br>';
$facture->type = 0;
$nextval = $module->getNextValue($mysoc, $facture);
if ("{$nextval}" != $langs->trans("NotAvailable")) {
// Keep " on nextval
$htmltooltip .= $langs->trans("NextValueForInvoices") . ': ';
if ($nextval) {
if (preg_match('/^Error/', $nextval) || $nextval == 'NotConfigured') {
$nextval = $langs->trans($nextval);
}
$htmltooltip .= $nextval . '<br>';
} else {
$htmltooltip .= $langs->trans($module->error) . '<br>';
示例2: testFactureMercure
/**
* testFactureCreate
*
* @return int
*/
public function testFactureMercure()
{
global $conf,$user,$langs,$db;
$conf=$this->savconf;
$user=$this->savuser;
$langs=$this->savlangs;
$db=$this->savdb;
require_once dirname(__FILE__).'/../../htdocs/compta/facture/class/facture.class.php';
require_once dirname(__FILE__).'/../../htdocs/core/modules/facture/mod_facture_mercure.php';
//$conf->global->FACTURE_MERCURE_MASK_CREDIT='{yyyy}{mm}-{0000@3}';
//$conf->global->FACTURE_MERCURE_MASK_INVOICE='{yyyy}{mm}-{0000@3}';
$conf->global->FACTURE_MERCURE_MASK_CREDIT='{yyyy}-{0000@1}';
$conf->global->FACTURE_MERCURE_MASK_INVOICE='{yyyy}-{0000@1}';
$localobject=new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->date=dol_mktime(0, 0, 0, 1, 1, 2012);
$numbering=new mod_facture_mercure();
$result=$numbering->getNextValue($mysoc, $localobject);
print __METHOD__." result=".$result."\n";
$localobject=new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->date=dol_mktime(0, 0, 0, 1, 1, 2011);
$numbering=new mod_facture_mercure();
$result=$numbering->getNextValue($mysoc, $localobject);
print __METHOD__." result=".$result."\n";
$this->assertLessThan($result, 0);
return $result;
}
示例3: testFactureRecCreate
/**
* testFactureCreate
*
* @return int
*/
public function testFactureRecCreate()
{
global $conf, $user, $langs, $db;
$conf = $this->savconf;
$user = $this->savuser;
$langs = $this->savlangs;
$db = $this->savdb;
$localobjectinv = new Facture($this->savdb);
$localobjectinv->initAsSpecimen();
$localobjectinv->create($user);
$localobject = new FactureRec($this->savdb);
$localobject->initAsSpecimen();
$result = $localobject->create($user, $localobjectinv->id);
$this->assertLessThan($result, 0);
print __METHOD__ . " result=" . $result . "\n";
return $result;
}
示例4: testPdfDocGetLineDesc
/**
* testPdfDocGetLineDesc
*
* @return void
*/
public function testPdfDocGetLineDesc()
{
global $conf,$user,$langs,$db;
$conf=$this->savconf;
$user=$this->savuser;
$langs=$this->savlangs;
$db=$this->savdb;
$localobject=new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->lines=array();
$localobject->lines[0]->fk_product=1;
$localobject->lines[0]->label='Label 1';
$localobject->lines[0]->desc="This is a description with a é accent\n(Country of origin: France)";
$result=pdf_getlinedesc($localobject,0,$langs);
print __METHOD__." result=".$result."\n";
$this->assertEquals($result,"PIDRESS - Label 1<br>This is a description with a é accent<br>(Country of origin: France)");
$result=doc_getlinedesc($localobject->lines[0],$langs);
print __METHOD__." result=".$result."\n";
$this->assertEquals($result,"PIDRESS - Label 1\nThis is a description with a é accent\n(Country of origin: France)");
}
示例5: testUpdatePrice
/**
* Test function addline and update_price
*
* @return boolean
* @see http://wiki.dolibarr.org/index.php/Draft:VAT_calculation_and_rounding#Standard_usage
*/
public function testUpdatePrice()
{
//$this->sharedFixture
global $conf, $user, $langs, $db;
$this->savconf = $conf;
$this->savuser = $user;
$this->savlangs = $langs;
$this->savdb = $db;
$conf->global->MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND = 0;
// Two lines of 1.24 give 2.48 HT and 2.72 TTC with standard vat rounding mode
$localobject = new Facture($this->savdb);
$localobject->initAsSpecimen('nolines');
$invoiceid = $localobject->create($user);
$localobject->addline('Desc', 1.24, 1, 10, 0, 0, 0, 0, '', '', 0, 0, 0, 'HT');
$localobject->addline('Desc', 1.24, 1, 10, 0, 0, 0, 0, '', '', 0, 0, 0, 'HT');
$newlocalobject = new Facture($this->savdb);
$newlocalobject->fetch($invoiceid);
$this->assertEquals(2.48, $newlocalobject->total_ht, "testUpdatePrice test1");
$this->assertEquals(0.24, $newlocalobject->total_tva, "testUpdatePrice test2");
$this->assertEquals(2.72, $newlocalobject->total_ttc, "testUpdatePrice test3");
// Two lines of 1.24 give 2.48 HT and 2.73 TTC with global vat rounding mode
$localobject = new Facture($this->savdb);
$localobject->initAsSpecimen('nolines');
$invoiceid = $localobject->create($user);
$localobject->addline('Desc', 1.24, 1, 10, 0, 0, 0, 0, '', '', 0, 0, 0, 'HT');
$localobject->addline('Desc', 1.24, 1, 10, 0, 0, 0, 0, '', '', 0, 0, 0, 'HT');
$newlocalobject = new Facture($this->savdb);
$newlocalobject->fetch($invoiceid);
$this->assertEquals(2.48, $newlocalobject->total_ht, "testUpdatePrice test4");
//$this->assertEquals(0.25,$newlocalobject->total_tva);
//$this->assertEquals(2.73,$newlocalobject->total_ttc);
}
示例6: initAsSpecimen
/**
* Initialise an instance with random values.
* Used to build previews or test instances.
* id must be 0 if object instance is a specimen.
*
* @param string $option ''=Create a specimen invoice with lines, 'nolines'=No lines
* @return void
*/
function initAsSpecimen($option = '')
{
global $user, $langs, $conf;
$now = dol_now();
$arraynow = dol_getdate($now);
$nownotime = dol_mktime(0, 0, 0, $arraynow['mon'], $arraynow['mday'], $arraynow['year']);
parent::initAsSpecimen($option);
$this->usenewprice = 1;
}
示例7: testFactureRoundingCreate2
/**
* testFactureRoundingCreate2
*
* @return int
*
* @depends testFactureRoundingCreate1
* Test according to page http://wiki.dolibarr.org/index.php/Draft:VAT_calculation_and_rounding#Standard_usage
*/
public function testFactureRoundingCreate2()
{
global $conf,$user,$langs,$db;
$conf=$this->savconf;
$user=$this->savuser;
$langs=$this->savlangs;
$db=$this->savdb;
$localobject=new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->lines=array();
unset($localobject->total_ht);
unset($localobject->total_ttc);
unset($localobject->total_vat);
$result=$localobject->create($user);
// Add two lines
for ($i=0; $i<2; $i++)
{
$localobject->addline($result, 'Description '.$i, 1.24, 1, 10);
}
$newlocalobject=new Facture($this->savdb);
$newlocalobject->fetch($result);
//var_dump($newlocalobject);
$this->assertEquals($newlocalobject->total_ht, 2.48);
//$this->assertEquals($newlocalobject->total_tva, 0.25);
//$this->assertEquals($newlocalobject->total_ttc, 2.73);
return $result;
}
示例8: testFactureValid
/**
* testFactureValid
*
* @param Object $localobject Invoice
* @return void
*
* @depends testFactureUpdate
* The depends says test is run only if previous is ok
*/
public function testFactureValid($localobject)
{
global $conf,$user,$langs,$db;
$conf=$this->savconf;
$user=$this->savuser;
$langs=$this->savlangs;
$db=$this->savdb;
$result=$localobject->validate($user);
print __METHOD__." id=".$localobject->id." result=".$result."\n";
$this->assertLessThan($result, 0);
// Test everything are still same than specimen
$newlocalobject=new Facture($this->savdb);
$newlocalobject->initAsSpecimen();
$this->changeProperties($newlocalobject);
$this->assertEquals($this->objCompare($localobject,$newlocalobject,true,array('id','lines','client','thirdparty','brouillon','user_author','date_creation','date_validation','datem','ref','statut','paye','specimen','facnumber','actiontypecode','actionmsg2','actionmsg','mode_reglement','cond_reglement','cond_reglement_doc')), array()); // Actual, Expected
return $localobject;
}
示例9: testFactureBuild
/**
* testFactureBuild
*
* @return int
*/
public function testFactureBuild()
{
global $conf,$user,$langs,$db;
$conf=$this->savconf;
$user=$this->savuser;
$langs=$this->savlangs;
$db=$this->savdb;
$conf->facture->dir_output.='/temp';
$localobjectcom=new Commande($this->savdb);
$localobjectcom->initAsSpecimen();
$localobject=new Facture($this->savdb);
$localobject->createFromOrder($localobjectcom);
$localobject->date_lim_reglement = dol_now() + 3600 * 24 *30;
// Crabe
$localobject->modelpdf='crabe';
$result=facture_pdf_create($db, $localobject, $localobject->modelpdf, $langs);
$localobject=new Facture($this->savdb);
$localobject->initAsSpecimen();
$this->assertLessThan($result, 0);
print __METHOD__." result=".$result."\n";
// Oursin
$localobject->modelpdf='oursin';
$result=facture_pdf_create($db, $localobject, $localobject->modelpdf, $langs);
$this->assertLessThan($result, 0);
print __METHOD__." result=".$result."\n";
return 0;
}
示例10: testPdfDocGetLineDesc
/**
* testPdfDocGetLineDesc
*
* @return void
*/
public function testPdfDocGetLineDesc()
{
global $conf, $user, $langs, $db;
$conf = $this->savconf;
$user = $this->savuser;
$langs = $this->savlangs;
$db = $this->savdb;
$localproduct = new Product($this->savdb);
$localproduct->fetch(0, 'PIDRESS');
$product_id = $localproduct->id;
if ($product_id <= 0) {
print "\n" . __METHOD__ . " A product with ref PIDRESS must exists into database";
die;
}
$localobject = new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->lines = array();
$localobject->lines[0] = new FactureLigne($this->savdb);
$localobject->lines[0]->fk_product = $product_id;
$localobject->lines[0]->label = 'Label 1';
$localobject->lines[0]->desc = "This is a description with a é accent\n(Country of origin: France)";
$result = pdf_getlinedesc($localobject, 0, $langs);
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals($result, "PIDRESS - Label 1<br>This is a description with a é accent<br>(Country of origin: France)");
$result = doc_getlinedesc($localobject->lines[0], $langs);
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals($result, "PIDRESS - Label 1\nThis is a description with a é accent\n(Country of origin: France)");
}
示例11: testFactureAddLine3
/**
* testFactureAddLine3
*
* @return void
*
* @depends testFactureAddLine2
* The depends says test is run only if previous is ok
*/
public function testFactureAddLine3()
{
global $conf, $user, $langs, $db;
$conf = $this->savconf;
$user = $this->savuser;
$langs = $this->savlangs;
$db = $this->savdb;
// With option MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND = 0
$conf->global->MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND = 0;
$localobject3 = new Facture($this->savdb);
$localobject3->initAsSpecimen('nolines');
$facid = $localobject3->create($user);
$localobject3->addline('Line 1', 6.36, 3, 21);
$localobject3->addline('Line 2', 6.36, 3, 21);
$localobject3->addline('Line 3', 6.36, 3, 21);
$localobject3->addline('Line 4', 6.36, 3, 21);
$localobject3->addline('Line 5', 6.36, 3, 21);
print __METHOD__ . " id=" . $facid . " total_ttc=" . $localobject3->total_ttc . "\n";
$this->assertEquals(95.40000000000001, $localobject3->total_ht);
$this->assertEquals(20.05, $localobject3->total_tva);
$this->assertEquals(115.45, $localobject3->total_ttc);
// With option MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND = 1
$conf->global->MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND = 1;
$localobject3 = new Facture($this->savdb);
$localobject3->initAsSpecimen('nolines');
$facid = $localobject3->create($user);
$localobject3->addline('Line 1', 6.36, 3, 21);
$localobject3->addline('Line 2', 6.36, 3, 21);
$localobject3->addline('Line 3', 6.36, 3, 21);
$localobject3->addline('Line 4', 6.36, 3, 21);
$localobject3->addline('Line 5', 6.36, 3, 21);
print __METHOD__ . " id=" . $facid . " total_ttc=" . $localobject3->total_ttc . "\n";
$this->assertEquals(95.40000000000001, $localobject3->total_ht);
$this->assertEquals(20.03, $localobject3->total_tva);
$this->assertEquals(115.43, $localobject3->total_ttc);
}
示例12: testFactureMercure
/**
* testFactureMercure
*
* @return int
*/
public function testFactureMercure()
{
global $conf, $user, $langs, $db, $mysoc;
$conf = $this->savconf;
$user = $this->savuser;
$langs = $this->savlangs;
$db = $this->savdb;
require_once dirname(__FILE__) . '/../../htdocs/compta/facture/class/facture.class.php';
require_once dirname(__FILE__) . '/../../htdocs/core/modules/facture/mod_facture_mercure.php';
// First we try with a simple mask, with no reset
// and we test counter is still increase second year.
$conf->global->FACTURE_ADDON = 'mercure';
$conf->global->FACTURE_MERCURE_MASK_CREDIT = '{yyyy}-{0000}';
$conf->global->FACTURE_MERCURE_MASK_INVOICE = '{yyyy}-{0000}';
$localobject = new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->date = dol_mktime(12, 0, 0, 1, 1, 1915);
// we use year 1915 to be sure to not have existing invoice for this year
$numbering = new mod_facture_mercure();
$result = $numbering->getNextValue($mysoc, $localobject);
$result2 = $localobject->create($user, 1);
$result3 = $localobject->validate($user, $result);
// create invoice by forcing ref
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals('1915-0001', $result);
// counter must start to 1
$result = $localobject->is_erasable();
print __METHOD__ . " is_erasable=" . $result . "\n";
$this->assertEquals(1, $result, 'Test for {yyyy}-{0000}, 1st invoice');
// Can be deleted
$localobject2 = new Facture($this->savdb);
$localobject2->initAsSpecimen();
$localobject2->date = dol_mktime(12, 0, 0, 1, 1, 1916);
// we use following year for second invoice (there is no reset into mask)
$numbering = new mod_facture_mercure();
$result = $numbering->getNextValue($mysoc, $localobject2, 'last');
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals('1915-0001', $result);
$result = $numbering->getNextValue($mysoc, $localobject2);
$result2 = $localobject2->create($user, 1);
$result3 = $localobject2->validate($user, $result);
// create invoice by forcing ref
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals('1916-0002', $result);
// counter must be now 2 (not reseted)
$result = $localobject2->is_erasable();
print __METHOD__ . " is_erasable=" . $result . "\n";
$this->assertEquals(1, $result);
// Can be deleted
$result = $localobject->is_erasable();
print __METHOD__ . " is_erasable=" . $result . "\n";
$this->assertEquals(0, $result, 'Test for {yyyy}-{0000} that is_erasable is 0 for 1st invoice');
// 1 can no more be deleted (2 is more recent)
// Now we try with a reset
$conf->global->FACTURE_MERCURE_MASK_CREDIT = '{yyyy}-{0000@1}';
$conf->global->FACTURE_MERCURE_MASK_INVOICE = '{yyyy}-{0000@1}';
$localobject = new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->date = dol_mktime(12, 0, 0, 1, 1, 1910);
// we use year 1910 to be sure to not have existing invoice for this year
$numbering = new mod_facture_mercure();
$result = $numbering->getNextValue($mysoc, $localobject);
$result2 = $localobject->create($user, 1);
$result3 = $localobject->validate($user, $result);
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals('1910-0001', $result, 'Test for {yyyy}-{0000@1} 1st invoice');
// counter must start to 1
$localobject2 = new Facture($this->savdb);
$localobject2->initAsSpecimen();
$localobject2->date = dol_mktime(12, 0, 0, 1, 1, 1910);
// we use same year for second invoice (and there is a reset required)
$numbering = new mod_facture_mercure();
$result = $numbering->getNextValue($mysoc, $localobject2);
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals('1910-0002', $result, 'Test for {yyyy}-{0000@1} 2nd invoice, same day');
// counter must be now 2
$localobject3 = new Facture($this->savdb);
$localobject3->initAsSpecimen();
$localobject3->date = dol_mktime(12, 0, 0, 1, 1, 1911);
// we use next year for third invoice (and there is a reset required)
$numbering = new mod_facture_mercure();
$result = $numbering->getNextValue($mysoc, $localobject3);
print __METHOD__ . " result=" . $result . "\n";
$this->assertEquals('1911-0001', $result, 'Test for {yyyy}-{0000@1} 3nd invoice, same day');
// counter must be now 1
// Same but we add month after year
$conf->global->FACTURE_MERCURE_MASK_CREDIT = '{yyyy}{mm}-{0000@1}';
$conf->global->FACTURE_MERCURE_MASK_INVOICE = '{yyyy}{mm}-{0000@1}';
$localobject = new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->date = dol_mktime(12, 0, 0, 1, 1, 1920);
// we use year 1920 to be sure to not have existing invoice for this year
$numbering = new mod_facture_mercure();
$result = $numbering->getNextValue($mysoc, $localobject);
$result2 = $localobject->create($user, 1);
//.........這裏部分代碼省略.........
示例13: testFactureBuild
/**
*/
public function testFactureBuild()
{
global $conf,$user,$langs,$db;
$conf=$this->savconf;
$user=$this->savuser;
$langs=$this->savlangs;
$db=$this->savdb;
$conf->facture->dir_output.='/temp';
$localobject=new Facture($this->savdb);
$localobject->initAsSpecimen();
$localobject->socid=1;
// Crabe
$localobject->modelpdf='crabe';
$result=facture_pdf_create($db, $localobject, '', $localobject->modelpdf, $langs);
$this->assertLessThan($result, 0);
print __METHOD__." result=".$result."\n";
// Oursin
$localobject->modelpdf='oursin';
$result=facture_pdf_create($db, $localobject, '', $localobject->modelpdf, $langs);
$this->assertLessThan($result, 0);
print __METHOD__." result=".$result."\n";
return 0;
}