mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-12-05 17:18:13 +01:00
Compare commits
48 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
67c2a48fc9 | ||
|
|
792ff4044e | ||
|
|
29ef86a245 | ||
|
|
d5add8aa49 | ||
|
|
d3b9a83055 | ||
|
|
f4b2269e2e | ||
|
|
0eee1ad18b | ||
|
|
d5e2f89edc | ||
|
|
67bcc242db | ||
|
|
5eb5033aba | ||
|
|
723c8278ce | ||
|
|
bbf83c7053 | ||
|
|
b8286ab8f3 | ||
|
|
7133c6529b | ||
|
|
c396a08cb2 | ||
|
|
0981c69515 | ||
|
|
1987ea2eb7 | ||
|
|
6a4ee18380 | ||
|
|
b3a2908b48 | ||
|
|
910f7e8564 | ||
|
|
7cf1a97673 | ||
|
|
cf57e7e88b | ||
|
|
8b4dcb1194 | ||
|
|
a186e16568 | ||
|
|
eaa31ed4a3 | ||
|
|
0e62008db6 | ||
|
|
aa096448be | ||
|
|
d9d0618eec | ||
|
|
39afafc585 | ||
|
|
b37b2ba76f | ||
|
|
c48b035a15 | ||
|
|
1d197e42bb | ||
|
|
b0c7b8750a | ||
|
|
a0b791a4a6 | ||
|
|
abefce7ae2 | ||
|
|
352bdaf9c4 | ||
|
|
35f3a4f441 | ||
|
|
111e3fcd32 | ||
|
|
d819d88718 | ||
|
|
278eea6fae | ||
|
|
fa22ebd893 | ||
|
|
793e77bc5f | ||
|
|
70a453a5c2 | ||
|
|
33c6d95b1c | ||
|
|
1e64870a9e | ||
|
|
9509929f5d | ||
|
|
336d3ad8e5 | ||
|
|
e71631abe0 |
143
ChangeLog
143
ChangeLog
@@ -2,6 +2,139 @@
|
||||
English Dolibarr ChangeLog
|
||||
--------------------------------------------------------------
|
||||
|
||||
***** ChangeLog for 18.0.6 compared to 18.0.5 *****
|
||||
FIX: 16.0 - parent company gets emptied when updating a third party from the card in edit mode (#28269)
|
||||
FIX: 16.0 - the e-mail templates configured in the notification module are not used if the recipient is a fixed e-mail address (#29407)
|
||||
FIX: 17.0: $num doesn't take trigger-modified newref into account, leading to inconsistencies if BILL_SUPPLIER_VALIDATE changes the invoice's ref (#28684)
|
||||
FIX: 17.0: fatal when updating recurring supplier invoice line with php8 ($remise_percent is '' instead of 0) (#31713)
|
||||
FIX: 17.0: supplier invoice template card: buyer and seller swapped in VAT-related function calls (probably a copy-paste from customer invoice templates) (#31446)
|
||||
FIX: #24265 regression cannot see all product on takepos (#28753)
|
||||
FIX: #25853 Thirdparty Massaction (#25868)
|
||||
FIX: #28205
|
||||
FIX: #28251 Fixing subpermission name on api_multicurrencies.class.php (#28252)
|
||||
FIX: #28369
|
||||
FIX: #28518 (#28520)
|
||||
FIX: #28978 FIX: #28976
|
||||
FIX: #29029 Impossible to delete an order line
|
||||
FIX: #29114 Missing contact term in intervention
|
||||
FIX: #29114 Translate contact term in intervention
|
||||
FIX: #29439 incomplete API return (#29796)
|
||||
FIX: #29496 filtering a record should not hide its child not filtered
|
||||
FIX: #30010 Use conf TICKET_MESSAGE_MAIL_INTRO instead of translation key (#30081)
|
||||
FIX: #30274 Add the include before executing dolibarr_set_const (#30320)
|
||||
FIX: #30467
|
||||
FIX: #30768 allocate the correct invoice_line_id to the element timespent (#30769)
|
||||
FIX: Accountancy export with file or not
|
||||
FIX: Accountancy - Generate entries of expense report with localtax (#30411)
|
||||
FIX: Accountancy - Not trunc id_import
|
||||
FIX: accounting FEC import (Issue #28306) (#29414)
|
||||
FIX: Add new hidden conf "DISABLE_QTY_OVERWRITTEN" (#28523)
|
||||
FIX: Add same security test when uploading files from API than from GUI (#31114)
|
||||
FIX: Amount of localtaxes in foreign currency was wrong on screen and PDF
|
||||
FIX: an error in a complex else condition
|
||||
FIX: ASSET: annual depreciation starting year (Again ;-)) #26084 (#30040)
|
||||
FIX: avoid error "Column 'entity' in where clause is ambiguous" (#28270)
|
||||
FIX: avoid from re-initializing array result on nested hook getEntity (#30626)
|
||||
FIX: avoid php warnings (#29247)
|
||||
FIX: avoid to delete "lock" and "unlock" files
|
||||
FIX: avoid Unknown column 'pfp.ref_fourn' (#28145)
|
||||
FIX: background color for enabled modules (#29378)
|
||||
FIX: Backport fix fatal error on price with some truncating setup
|
||||
FIX: Backport page inventory.php from v18 to fix pagination bugs causing data loss (#29688)
|
||||
FIX: back to page on error in contact card (#29627)
|
||||
FIX: Bad calculation of $nbtotalofrecord (#30183)
|
||||
FIX: box_actions.php still uses fk_user_done which no longer exists (#31190)
|
||||
FIX: can validate shipment without stock movement (#31780)
|
||||
FIX: Condition on newDateLimReglement
|
||||
FIX: Conflict with autoload (#30399)
|
||||
FIX: const WORKFLOW_RECEPTION_CLASSIFY_NEWD_INVOICE (#31601)
|
||||
FIX: contact/address title is always "New Contact/Address" even if the contact/address already exists (#29581)
|
||||
FIX: Display the date according to user language on substitutions (#29510)
|
||||
FIX: Display the real_PMP on inventory when its value is equal to 0 (#22291)
|
||||
FIX: Don't display column when it's out of date (#28271)
|
||||
FIX: email templates for expense report not visible
|
||||
FIX: Error mesg show untranslated extrafield name (#30227)
|
||||
FIX: Error message overwrote when a error occurs during update of product multilangs (#30841)
|
||||
FIX: Error When cloning fourn price no default value for tva_tx (#28368)
|
||||
FIX: executeHooks $object default value (#29647)
|
||||
FIX: expedition PDF models using units labels (#30358)
|
||||
FIX: Extrafield following between rec invoice and classic invoice (#31445)
|
||||
FIX: fatal error on loading pictures in attached documents of an event (#30553)
|
||||
FIX: fatal error Unsupported operand types when recording load payment
|
||||
FIX: Fix bug select columns and access to the public ticket list from the public ticket card (case when we have connected to another client before, the track id stocked in session overwrite the new track id from the public ticket card) (#31000)
|
||||
FIX: Fix create shipping with product who have negative stocks on warehouse but the negative stock transfer is allowed (#26217)
|
||||
FIX: Fix save directory for invoice ODT and multientities
|
||||
FIX: group by qty in product margin tab (#29853)
|
||||
FIX: Hierarchy Employee view do not filter on employee = 1 (#29496)
|
||||
FIX: if you call fetchLines several times, your $object->lines contains duplicates (#31167)
|
||||
FIX: If you have no stock of your product, an error is displayed when you delete the reception. (#31504)
|
||||
FIX: incorrect page numbering in PDF #29458 (#29476)
|
||||
FIX: inventoryDeletePermission id define twice
|
||||
FIX: issue on action set condition in particular when you set a deposi… (#31518)
|
||||
FIX: issue to get the right files exported in Quadratrus export.php (#30004)
|
||||
FIX: lang output for sales representative on PDF (#30469)
|
||||
FIX: late order search option (#30692) and propal (#30687)
|
||||
FIX: lettering (auto) for invoice deposit with company discount (#29633)
|
||||
FIX: made invalid code shape error more user friendly (#29498)
|
||||
FIX: Merge of thirdparties must also move uploaded files
|
||||
FIX: missing entity parameter for ajax_constantonoff
|
||||
FIX: missing hide "new" button where "product" or "service" module are disable
|
||||
FIX: mo cloning (#29686)
|
||||
FIX: modification date from label in accounting bookkeeping list (#30038)
|
||||
FIX: Move the trigger for delete order line before the SQL request
|
||||
FIX: multiple problems with multicompany
|
||||
FIX: mysql error during dump for enable sandbox M999999 (#31116)
|
||||
FIX: notification: error 500 in fixed emails due to a bad copy/paste (#29580)
|
||||
FIX: notification module: for supplier orders (any of the 3 triggers), user can choose an e-mail template in conf, but the conf is not used when sending the notification (#28216)
|
||||
FIX: Not qualified lines for reception (#29473)
|
||||
FIX: not redirect when error occurs on updating card (#29388)
|
||||
FIX: Not trancate the multicurrency rate shown on cards (even if the global MAIN_MAX_DECIMALS_SHOWN is set to 0) (#28211)
|
||||
FIX: on change ref for bank account attachment are lost (#30529)
|
||||
FIX: Option MAIN_DOC_USE_TIMING can be a string with date format
|
||||
FIX: orders to bill menu (#30179)
|
||||
FIX: Payment on customer invoice - Remove accountid in url if empty for apply default value (#28156)
|
||||
FIX: PDF Fatal error : Backport fix from #23972
|
||||
FIX: PDF Translations Extrafields
|
||||
FIX: permission on payment file of a tax
|
||||
FIX: php8: Fatal when empty $tmpvat is an empty string (no silent conversion to '0' when used in arithmetic operations) (#29451)
|
||||
FIX: PHP 8 warning on output of successful cronjob (#29922)
|
||||
FIX: PHP exception on getSpecialCode (#29646)
|
||||
FIX: php warning global conf (#29478)
|
||||
FIX: pos: invoice date incorrectly set because of timezome mismatches (reverts #36e91da) (#30184)
|
||||
FIX: public project form return an error if SOCIETE_EMAIL_UNIQUE (#29942)
|
||||
FIX: purge files cron: php warnings when rest module enabled (#30919)
|
||||
FIX: PUT /thirdparties/{id} and PUT /contacts/{id} should throw exception if update returns < 0 (#29596)
|
||||
FIX: Regression #29340
|
||||
FIX: Repair the replenishment list (#29336)
|
||||
FIX: REPLENISH MANY FOURN WHEN ORDER ALREADY CREATE (#29710)
|
||||
FIX: round capital societe (#29211)
|
||||
FIX: search and add extrafields to tasks when conf disabled (#29542)
|
||||
FIX: show preview pdf list expensereport (#31694)
|
||||
FIX: sometimes a string type instead integer is return, why ?
|
||||
FIX: Special code is now transmitted by args only in order supplier (#28546) (#28619)
|
||||
FIX: SQL syntax error in DDLUpdateField
|
||||
FIX: subscription must be editable when accounting isn't reconciled (#28469)
|
||||
FIX: substitutions THIRDPARTY_XXX are not available for actioncomm reminders (#31385)
|
||||
FIX: Supplier Order search on date valid (#30448)
|
||||
FIX: supplier price duplicate entry on update supplier product ref (#29290)
|
||||
FIX: syntax error
|
||||
FIX: TakePOS | Add product / Delete line of existing invoice
|
||||
FIX: Ticket new message notification sent twice
|
||||
FIX: transfer in accountancy for expense reports.
|
||||
FIX: Unsigned propal having signing date (#29825)
|
||||
FIX: Update asset.class.php
|
||||
FIX: update date_echeance of supplier invoices when we update invoice date in the past (#29886)
|
||||
FIX: use $conf->browser->os instead
|
||||
FIX: use price() to display qty on a product's stats tab to avoid showing too many decimals when rounding errors are possible (#31165)
|
||||
FIX: User List - Function is show in wrong column when module HRM enabled (#30186)
|
||||
fix: when invoice is created by WORKFLOW_ORDER_AUTOCREATE_INVOICE on ORDER_NEW, the invoice must have the default bank account of the thirdparty is it's empty on order (#29462)
|
||||
FIX: when qty is not an integer, apply price() (#31138)
|
||||
FIX: Wrong currency shown in TakePOS payment page
|
||||
FIX: wrong shortcut key for macintosh
|
||||
FIX: wrong sql request with product category filter
|
||||
FIX: wrong stock permission number
|
||||
|
||||
|
||||
***** ChangeLog for 18.0.5 compared to 18.0.4 *****
|
||||
FIX: 17.0: deprecated field should only be a fallback
|
||||
FIX: 17.0 - php8 warnings: test for $field existence before checking if it is null or empty
|
||||
@@ -366,7 +499,7 @@ NEW: No overwrite of optionals during put() contact
|
||||
NEW: Notifications: add Customer Order delivered (ORDER_NEW) in module Notification
|
||||
NEW: Notifications: for Sign or Refused Propal from Online Page
|
||||
NEW: Now we can edit amount on VAT and salaries clone action
|
||||
NEW: only get openned contact from liste_contact function, to not have acces to closed contact as mail receiver
|
||||
NEW: only get open contact from liste_contact function, to not have access to closed contact as mail receiver
|
||||
NEW: Option to manage deposit slips for more payment modes (not only
|
||||
NEW: Option to show column for field and line selection on the left
|
||||
NEW: Orders: add sub total in order list det
|
||||
@@ -2611,7 +2744,7 @@ NEW: add quick dropdown menu in top right menu (experimental with MAIN_USE_TOP_M
|
||||
NEW: add region in export companies and contacts
|
||||
NEW: add rights on margin info on invoice list
|
||||
NEW: add search param for close date on order list
|
||||
NEW: add show preview for mail attachement on form mail
|
||||
NEW: add show preview for mail attachment on form mail
|
||||
NEW: add State/Province origin for products
|
||||
NEW: add the workflow interaction close intervention on closing ticket
|
||||
NEW: add tracking number in list and search_all items
|
||||
@@ -3996,7 +4129,7 @@ FIX: access to public interface when origin email has an alias.
|
||||
FIX: Alias name is not into the email recipient label.
|
||||
FIX: allow standalone credit note even if no invoice
|
||||
FIX: an admin can not access his own permissions after enabling advanced permissions
|
||||
FIX: Attachement of linked files on ticket when sending a message
|
||||
FIX: Attachment of linked files on ticket when sending a message
|
||||
FIX: avoid non numeric warning
|
||||
FIX: Bad currency var used in stripe for connect
|
||||
FIX: Bad list of ticket on public interface for ticket emailcollector
|
||||
@@ -4792,7 +4925,7 @@ NEW: hidden option to define an invoice template for each invoice type
|
||||
NEW: Highlight lines on lists when they are checked
|
||||
NEW: Notification module support expense report+holiday validation and approval
|
||||
NEW: On customer/supplier card, add simple tooltip to amount boxes
|
||||
NEW: Page to check if the operations/items created between two dates have attached item(s) and possibility to download all attachements
|
||||
NEW: Page to check if the operations/items created between two dates have attached item(s) and possibility to download all attachments
|
||||
NEW: possibility to add all rights of all modules in one time
|
||||
NEW: redirect if only one result on global search on card
|
||||
NEW: Permission to ignore price min
|
||||
@@ -6236,7 +6369,7 @@ NEW: No external check of version without explicit click in about page.
|
||||
NEW: ODT docs for USER USERGROUP CONTRACT and PRODUCT class
|
||||
NEW: odt usergroup
|
||||
NEW: On invoices generated by template, we save if invoice come from a source template.
|
||||
NEW: option to copy into attachement files of events, files send by mail (with auto event creation)
|
||||
NEW: option to copy into attachment files of events, files send by mail (with auto event creation)
|
||||
NEW: PDF with numbertoword
|
||||
NEW: Permit multiple file upload in linked documents
|
||||
NEW: PHP 7.1 compatibility
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
"npm": ">=5.6.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"zapier-platform-core": "11.3.1"
|
||||
"zapier-platform-core": "15.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"mocha": "^5.2.0",
|
||||
|
||||
@@ -161,7 +161,7 @@ $workflowcodes = array(
|
||||
),
|
||||
|
||||
// Automatic classification reception
|
||||
'WORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE'=>array(
|
||||
'WORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE'=>array(
|
||||
'family'=>'classify_reception',
|
||||
'position'=>95,
|
||||
'enabled'=>(isModEnabled("reception") && (isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))),
|
||||
|
||||
@@ -2517,6 +2517,7 @@ class ActionComm extends CommonObject
|
||||
|
||||
// Load event
|
||||
$res = $this->fetch($actionCommReminder->fk_actioncomm);
|
||||
if ($res > 0) $res = $this->fetch_thirdparty();
|
||||
if ($res > 0) {
|
||||
// PREPARE EMAIL
|
||||
$errormesg = '';
|
||||
|
||||
@@ -146,7 +146,6 @@ $reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action
|
||||
if ($reshook < 0) {
|
||||
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
|
||||
}
|
||||
|
||||
if (empty($reshook)) {
|
||||
$backurlforlist = DOL_URL_ROOT.'/comm/propal/list.php';
|
||||
|
||||
@@ -1614,7 +1613,20 @@ if (empty($reshook)) {
|
||||
$result = $object->set_demand_reason($user, GETPOST('demand_reason_id', 'int'));
|
||||
} elseif ($action == 'setconditions' && $usercancreate) {
|
||||
// Terms of payment
|
||||
$result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int'), GETPOST('cond_reglement_id_deposit_percent', 'alpha'));
|
||||
$sql = "SELECT code ";
|
||||
$sql .= "FROM " . $db->prefix() . "c_payment_term";
|
||||
$sql .= " WHERE rowid = " . ((int) GETPOST('cond_reglement_id', 'int'));
|
||||
$result = $db->query($sql);
|
||||
if ($result) {
|
||||
$obj = $db->fetch_object($result);
|
||||
if ($obj->code == 'DEP30PCTDEL') {
|
||||
$result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int'), GETPOST('cond_reglement_id_deposit_percent', 'alpha'));
|
||||
} else {
|
||||
$object->deposit_percent = 0;
|
||||
$object->update($user);
|
||||
$result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int'), $object->deposit_percent);
|
||||
}
|
||||
}
|
||||
} elseif ($action == 'setremisepercent' && $usercancreate) {
|
||||
$result = $object->set_remise_percent($user, price2num(GETPOST('remise_percent'), '', 2));
|
||||
} elseif ($action == 'setremiseabsolue' && $usercancreate) {
|
||||
|
||||
@@ -2635,7 +2635,7 @@ while ($i < $imaxinloop) {
|
||||
$productstat_cachevirtual[$generic_commande->lines[$lig]->fk_product]['stock_reel'] = $generic_product->stock_theorique;
|
||||
} else {
|
||||
$generic_product->stock_reel = $productstat_cache[$generic_commande->lines[$lig]->fk_product]['stock_reel'];
|
||||
$generic_product->stock_theorique = $productstat_cachevirtual[$generic_commande->lines[$lig]->fk_product]['stock_reel'] = $generic_product->stock_theorique;
|
||||
$generic_product->stock_theorique = $productstat_cachevirtual[$generic_commande->lines[$lig]->fk_product]['stock_reel'];
|
||||
}
|
||||
|
||||
if ($reliquat > $generic_product->stock_reel) {
|
||||
|
||||
@@ -2016,7 +2016,7 @@ if ($resql) {
|
||||
$productstat_cachevirtual[$obj->fk_product]['stock_reel'] = $generic_product->stock_theorique;
|
||||
} else {
|
||||
$generic_product->stock_reel = $productstat_cache[$obj->fk_product]['stock_reel'];
|
||||
$generic_product->stock_theorique = $productstat_cachevirtual[$obj->fk_product]['stock_reel'] = $generic_product->stock_theorique;
|
||||
$generic_product->stock_theorique = $productstat_cachevirtual[$obj->fk_product]['stock_reel'];
|
||||
}
|
||||
|
||||
if ($reliquat > $generic_product->stock_reel) {
|
||||
|
||||
@@ -321,7 +321,7 @@ if (empty($reshook)) {
|
||||
$object->date = dol_now();
|
||||
}
|
||||
|
||||
if (!empty($conf->global-> INVOICE_CHECK_POSTERIOR_DATE)) {
|
||||
if (!empty($conf->global->INVOICE_CHECK_POSTERIOR_DATE)) {
|
||||
$last_of_type = $object->willBeLastOfSameType(true);
|
||||
if (empty($object->date_validation) && !$last_of_type[0]) {
|
||||
setEventMessages($langs->transnoentities("ErrorInvoiceIsNotLastOfSameType", $object->ref, dol_print_date($object->date, 'day'), dol_print_date($last_of_type[1], 'day')), null, 'errors');
|
||||
@@ -4487,6 +4487,9 @@ if ($action == 'create') {
|
||||
$morehtmlref .= '</div>';
|
||||
|
||||
$object->totalpaid = $totalpaid; // To give a chance to dol_banner_tab to use already paid amount to show correct status
|
||||
$object->totalcreditnotes = $totalcreditnotes;
|
||||
$object->totaldeposits = $totaldeposits;
|
||||
$object->remaintopay = price2num($object->total_ttc - $object->totalpaid - $object->totalcreditnotes - $object->totaldeposits, 'MT');
|
||||
|
||||
dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref, '', 0, '', '');
|
||||
|
||||
@@ -5039,7 +5042,9 @@ if ($action == 'create') {
|
||||
|
||||
$current_situation_counter = array();
|
||||
foreach ($object->tab_previous_situation_invoice as $prev_invoice) {
|
||||
$tmptotalpaidforthisinvoice = $prev_invoice->getSommePaiement();
|
||||
$tmptotalallpayments = $prev_invoice->getSommePaiement(0);
|
||||
$tmptotalallpayments += $prev_invoice->getSumDepositsUsed(0);
|
||||
$tmptotalallpayments += $prev_invoice->getSumCreditNotesUsed(0);
|
||||
$total_prev_ht += $prev_invoice->total_ht;
|
||||
$total_prev_ttc += $prev_invoice->total_ttc;
|
||||
$current_situation_counter[] = (($prev_invoice->type == Facture::TYPE_CREDIT_NOTE) ?-1 : 1) * $prev_invoice->situation_counter;
|
||||
@@ -5052,11 +5057,14 @@ if ($action == 'create') {
|
||||
}
|
||||
print '<td class="right"><span class="amount">'.price($prev_invoice->total_ht).'</span></td>';
|
||||
print '<td class="right"><span class="amount">'.price($prev_invoice->total_ttc).'</span></td>';
|
||||
print '<td class="right">'.$prev_invoice->getLibStatut(3, $tmptotalpaidforthisinvoice).'</td>';
|
||||
print '<td class="right">'.$prev_invoice->getLibStatut(3, $tmptotalallpayments).'</td>';
|
||||
print '</tr>';
|
||||
}
|
||||
}
|
||||
|
||||
$totalallpayments = $object->getSommePaiement(0);
|
||||
$totalallpayments += $object->getSumCreditNotesUsed(0);
|
||||
$totalallpayments += $object->getSumDepositsUsed(0);
|
||||
|
||||
$total_global_ht += $total_prev_ht;
|
||||
$total_global_ttc += $total_prev_ttc;
|
||||
@@ -5072,7 +5080,7 @@ if ($action == 'create') {
|
||||
}
|
||||
print '<td class="right"><span class="amount">'.price($object->total_ht).'</span></td>';
|
||||
print '<td class="right"><span class="amount">'.price($object->total_ttc).'</span></td>';
|
||||
print '<td class="right">'.$object->getLibStatut(3, $object->getSommePaiement()).'</td>';
|
||||
print '<td class="right">'.$object->getLibStatut(3, $totalallpayments).'</td>';
|
||||
print '</tr>';
|
||||
|
||||
|
||||
@@ -5114,7 +5122,9 @@ if ($action == 'create') {
|
||||
$total_next_ht = $total_next_ttc = 0;
|
||||
|
||||
foreach ($object->tab_next_situation_invoice as $next_invoice) {
|
||||
$totalpaid = $next_invoice->getSommePaiement();
|
||||
$totalpaid = $next_invoice->getSommePaiement(0);
|
||||
$totalcreditnotes = $next_invoice->getSumCreditNotesUsed(0);
|
||||
$totaldeposits = $next_invoice->getSumDepositsUsed(0);
|
||||
$total_next_ht += $next_invoice->total_ht;
|
||||
$total_next_ttc += $next_invoice->total_ttc;
|
||||
|
||||
@@ -5127,7 +5137,7 @@ if ($action == 'create') {
|
||||
}
|
||||
print '<td class="right"><span class="amount">'.price($next_invoice->total_ht).'</span></td>';
|
||||
print '<td class="right"><span class="amount">'.price($next_invoice->total_ttc).'</span></td>';
|
||||
print '<td class="right">'.$next_invoice->getLibStatut(3, $totalpaid).'</td>';
|
||||
print '<td class="right">'.$next_invoice->getLibStatut(3, $totalpaid + $totalcreditnotes + $totaldeposits).'</td>';
|
||||
print '</tr>';
|
||||
}
|
||||
|
||||
|
||||
@@ -1340,6 +1340,14 @@ class FactureRec extends CommonInvoice
|
||||
$facture->multicurrency_tx = $facturerec->multicurrency_tx;
|
||||
}
|
||||
|
||||
if (isset($facture->array_options) && isset($facturerec->array_options)) {
|
||||
foreach ($facturerec->array_options as $key => $value) {
|
||||
if (isset($facture->array_options[$key])) {
|
||||
$facture->array_options[$key] = $value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$invoiceidgenerated = $facture->create($user);
|
||||
if ($invoiceidgenerated <= 0) {
|
||||
$this->errors = $facture->errors;
|
||||
|
||||
@@ -503,8 +503,8 @@ class Facture extends CommonInvoice
|
||||
$this->ref_client = trim($this->ref_client);
|
||||
|
||||
$this->note = (isset($this->note) ? trim($this->note) : trim($this->note_private)); // deprecated
|
||||
$this->note_private = (isset($this->note_private) ? trim($this->note_private) : trim($this->note_private));
|
||||
$this->note_public = trim($this->note_public);
|
||||
$this->note_private = (isset($this->note_private) ? trim($this->note_private) : '');
|
||||
$this->note_public = (isset($this->note_public) ? trim($this->note_public) : '');
|
||||
if (!$this->cond_reglement_id) {
|
||||
$this->cond_reglement_id = 0;
|
||||
}
|
||||
|
||||
@@ -422,8 +422,8 @@ if ($action == 'makepayment_confirm' && $user->hasRight('facture', 'paiement'))
|
||||
$paiementAmount = $facture->getSommePaiement();
|
||||
$totalcreditnotes = $facture->getSumCreditNotesUsed();
|
||||
$totaldeposits = $facture->getSumDepositsUsed();
|
||||
$totalpay = $paiementAmount + $totalcreditnotes + $totaldeposits;
|
||||
$remaintopay = price2num($facture->total_ttc - $totalpay);
|
||||
$totalallpayments = $paiementAmount + $totalcreditnotes + $totaldeposits;
|
||||
$remaintopay = price2num($facture->total_ttc - $totalallpayments);
|
||||
if ($remaintopay != 0) {
|
||||
$resultBank = $facture->setBankAccount($bankid);
|
||||
if ($resultBank < 0) {
|
||||
@@ -1821,7 +1821,7 @@ if ($resql) {
|
||||
$totalarray['val']['f.total_tva'] = 0;
|
||||
$totalarray['val']['f.total_ht'] = 0;
|
||||
$totalarray['val']['f.total_ttc'] = 0;
|
||||
$totalarray['val']['totalam'] = 0;
|
||||
$totalarray['val']['dynamount_payed'] = 0;
|
||||
$totalarray['val']['rtp'] = 0;
|
||||
|
||||
|
||||
@@ -1910,8 +1910,8 @@ if ($resql) {
|
||||
$multicurrency_totalcreditnotes = $facturestatic->getSumCreditNotesUsed(1);
|
||||
$multicurrency_totaldeposits = $facturestatic->getSumDepositsUsed(1);
|
||||
|
||||
$totalpay = $paiement + $totalcreditnotes + $totaldeposits;
|
||||
$remaintopay = price2num($facturestatic->total_ttc - $totalpay);
|
||||
$totalallpayments = $paiement + $totalcreditnotes + $totaldeposits;
|
||||
$remaintopay = $obj->total_ttc - $totalallpayments;
|
||||
|
||||
$multicurrency_totalpay = $multicurrency_paiement + $multicurrency_totalcreditnotes + $multicurrency_totaldeposits;
|
||||
$multicurrency_remaintopay = price2num($facturestatic->multicurrency_total_ttc - $multicurrency_totalpay);
|
||||
@@ -1923,13 +1923,16 @@ if ($resql) {
|
||||
if ($facturestatic->type == Facture::TYPE_CREDIT_NOTE && $obj->paye == 1) { // If credit note closed, we take into account the amount not yet consumed
|
||||
$remaincreditnote = $discount->getAvailableDiscounts($companystatic, '', 'rc.fk_facture_source='.$facturestatic->id);
|
||||
$remaintopay = -$remaincreditnote;
|
||||
$totalpay = price2num($facturestatic->total_ttc - $remaintopay);
|
||||
$totalallpayments = price2num($facturestatic->total_ttc - $remaintopay);
|
||||
$multicurrency_remaincreditnote = $discount->getAvailableDiscounts($companystatic, '', 'rc.fk_facture_source='.$facturestatic->id, 0, 0, 1);
|
||||
$multicurrency_remaintopay = -$multicurrency_remaincreditnote;
|
||||
$multicurrency_totalpay = price2num($facturestatic->multicurrency_total_ttc - $multicurrency_remaintopay);
|
||||
}
|
||||
|
||||
$facturestatic->alreadypaid = $paiement;
|
||||
$facturestatic->totalpaid = $paiement;
|
||||
$facturestatic->totalcreditnotes = $totalcreditnotes;
|
||||
$facturestatic->totaldeposits = $totaldeposits;
|
||||
|
||||
$marginInfo = array();
|
||||
if ($with_margin_info === true) {
|
||||
@@ -2382,14 +2385,14 @@ if ($resql) {
|
||||
}
|
||||
|
||||
if (!empty($arrayfields['dynamount_payed']['checked'])) {
|
||||
print '<td class="right nowraponall amount">'.(!empty($totalpay) ? price($totalpay, 0, $langs) : ' ').'</td>'; // TODO Use a denormalized field
|
||||
print '<td class="right nowraponall amount">'.(!empty($totalallpayments) ? price($totalallpayments, 0, $langs) : ' ').'</td>'; // TODO Use a denormalized field
|
||||
if (!$i) {
|
||||
$totalarray['nbfield']++;
|
||||
}
|
||||
if (!$i) {
|
||||
$totalarray['pos'][$totalarray['nbfield']] = 'totalam';
|
||||
$totalarray['pos'][$totalarray['nbfield']] = 'dynamount_payed';
|
||||
}
|
||||
$totalarray['val']['totalam'] += $totalpay;
|
||||
$totalarray['val']['dynamount_payed'] += $totalallpayments;
|
||||
}
|
||||
|
||||
// Pending amount
|
||||
@@ -2580,7 +2583,7 @@ if ($resql) {
|
||||
// Status
|
||||
if (!empty($arrayfields['f.fk_statut']['checked'])) {
|
||||
print '<td class="nowrap right">';
|
||||
print $facturestatic->getLibStatut(5, $paiement);
|
||||
print $facturestatic->getLibStatut(5, $totalallpayments);
|
||||
print "</td>";
|
||||
if (!$i) {
|
||||
$totalarray['nbfield']++;
|
||||
|
||||
@@ -86,11 +86,24 @@ foreach ($linkedObjectBlock as $key => $objectlink) {
|
||||
|
||||
print '</td>';
|
||||
print '<td class="linkedcol-statut right">';
|
||||
$totalallpayments = 0;
|
||||
$totalcalculated = false;
|
||||
if (method_exists($objectlink, 'getSommePaiement')) {
|
||||
print $objectlink->getLibStatut(3, $objectlink->getSommePaiement());
|
||||
$totalcalculated = true;
|
||||
$totalallpayments += $objectlink->getSommePaiement();
|
||||
} else {
|
||||
print $objectlink->getLibStatut(3);
|
||||
}
|
||||
if (method_exists($objectlink, 'getSumDepositsUsed')) {
|
||||
$totalcalculated = true;
|
||||
$totalallpayments += $objectlink->getSumDepositsUsed();
|
||||
}
|
||||
if (method_exists($objectlink, 'getSumCreditNotesUsed')) {
|
||||
$totalcalculated = true;
|
||||
$totalallpayments += $objectlink->getSumCreditNotesUsed();
|
||||
}
|
||||
print $objectlink->getLibStatut(3, ($totalcalculated ? $totalallpayments : -1));
|
||||
print '</td>';
|
||||
print '<td class="linkedcol-action right"><a class="reposition" href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=dellink&token='.newToken().'&dellinkid='.$key.'">'.img_picto($langs->transnoentitiesnoconv("RemoveLink"), 'unlink').'</a></td>';
|
||||
print "</tr>\n";
|
||||
|
||||
@@ -215,6 +215,9 @@ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
|
||||
$thirdpartystatic->code_compta = $obj->code_compta;
|
||||
//$thirdpartystatic->code_compta_fournisseur = $obj->code_compta_fournisseur;
|
||||
|
||||
$totalallpayments = $tmpinvoice->getSommePaiement(0);
|
||||
$totalallpayments += $tmpinvoice->getSumCreditNotesUsed(0);
|
||||
$totalallpayments += $tmpinvoice->getSumDepositsUsed(0);
|
||||
print '<tr class="oddeven">';
|
||||
print '<td class="nowrap">';
|
||||
|
||||
@@ -247,7 +250,7 @@ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
|
||||
|
||||
print '<td class="right" title="'.dol_escape_htmltag($langs->trans("DateModificationShort").' : '.dol_print_date($db->jdate($obj->tms), 'dayhour', 'tzuserrel')).'">'.dol_print_date($db->jdate($obj->tms), 'day', 'tzuserrel').'</td>';
|
||||
|
||||
print '<td>'.$tmpinvoice->getLibStatut(3, $obj->am).'</td>';
|
||||
print '<td>'.$tmpinvoice->getLibStatut(3, $totalallpayments).'</td>';
|
||||
|
||||
print '</tr>';
|
||||
|
||||
@@ -377,6 +380,8 @@ if ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMO
|
||||
print '<td class="nowrap right"><span class="amount">'.price($obj->total_ttc).'</span></td>';
|
||||
print '<td class="right" title="'.dol_escape_htmltag($langs->trans("DateModificationShort").' : '.dol_print_date($db->jdate($obj->tms), 'dayhour', 'tzuserrel')).'">'.dol_print_date($db->jdate($obj->tms), 'day', 'tzuserrel').'</td>';
|
||||
$alreadypaid = $facstatic->getSommePaiement();
|
||||
$alreadypaid += $facstatic->getSumCreditNotesUsed();
|
||||
$alreadypaid += $facstatic->getSumDepositsUsed();
|
||||
print '<td>'.$facstatic->getLibStatut(3, $alreadypaid).'</td>';
|
||||
print '</tr>';
|
||||
$total_ht += $obj->total_ht;
|
||||
|
||||
@@ -1269,7 +1269,7 @@ class Paiement extends CommonObject
|
||||
$facturestatic = new Facture($this->db);
|
||||
foreach ($arraybill as $billid) {
|
||||
$facturestatic->fetch($billid);
|
||||
$label .= '<br> '.$facturestatic->getNomUrl(1, '', 0, 0, '', 1).' '.$facturestatic->getLibStatut(2, 1);
|
||||
$label .= '<br> '.$facturestatic->getNomUrl(1, '', 0, 0, '', 1).' '.$facturestatic->getLibStatut(2, -1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -101,7 +101,7 @@ print '</span></td></tr></table></div><br>';
|
||||
/*
|
||||
* Invoices waiting for withdraw
|
||||
*/
|
||||
$sql = "SELECT f.ref, f.rowid, f.total_ttc, f.fk_statut, f.paye, f.type,";
|
||||
$sql = "SELECT f.ref, f.rowid, f.total_ttc, f.fk_statut as status, f.paye, f.type,";
|
||||
$sql .= " pfd.date_demande, pfd.amount,";
|
||||
$sql .= " s.nom as name, s.email, s.rowid as socid, s.tva_intra, s.siren as idprof1, s.siret as idprof2, s.ape as idprof3, s.idprof4, s.idprof5, s.idprof6";
|
||||
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f,";
|
||||
@@ -141,10 +141,13 @@ if ($resql) {
|
||||
|
||||
$invoicestatic->id = $obj->rowid;
|
||||
$invoicestatic->ref = $obj->ref;
|
||||
$invoicestatic->statut = $obj->fk_statut;
|
||||
$invoicestatic->statut = $obj->status;
|
||||
$invoicestatic->status = $obj->status;
|
||||
$invoicestatic->paye = $obj->paye;
|
||||
$invoicestatic->type = $obj->type;
|
||||
$alreadypayed = $invoicestatic->getSommePaiement();
|
||||
$totalallpayments = $invoicestatic->getSommePaiement(0);
|
||||
$totalallpayments += $invoicestatic->getSumCreditNotesUsed(0);
|
||||
$totalallpayments += $invoicestatic->getSumDepositsUsed(0);
|
||||
|
||||
$thirdpartystatic->id = $obj->socid;
|
||||
$thirdpartystatic->name = $obj->name;
|
||||
@@ -177,7 +180,7 @@ if ($resql) {
|
||||
print '</td>';
|
||||
|
||||
print '<td class="right">';
|
||||
print $invoicestatic->getLibStatut(3, $alreadypayed);
|
||||
print $invoicestatic->getLibStatut(3, $totalallpayments);
|
||||
print '</td>';
|
||||
print '</tr>';
|
||||
$i++;
|
||||
|
||||
@@ -159,7 +159,9 @@ if ($id > 0) {
|
||||
print $fac->error."<br>";
|
||||
continue;
|
||||
}
|
||||
$totalpaid = $fac->getSommePaiement();
|
||||
$alreadypaid = $fac->getSommePaiement();
|
||||
$alreadypaid += $fac->getSumDepositsUsed();
|
||||
$alreadypaid += $fac->getSumCreditNotesUsed();
|
||||
|
||||
$userstatic->id = $objf->userid;
|
||||
$userstatic->login = $objf->login;
|
||||
@@ -169,7 +171,7 @@ if ($id > 0) {
|
||||
'date' => $fac->date,
|
||||
'datefieldforsort' => $fac->date.'-'.$fac->ref,
|
||||
'link' => $fac->getNomUrl(1),
|
||||
'status' => $fac->getLibStatut(2, $totalpaid),
|
||||
'status' => $fac->getLibStatut(2, $alreadypaid),
|
||||
'amount' => $fac->total_ttc,
|
||||
'author' => $userstatic->getLoginUrl(1)
|
||||
);
|
||||
|
||||
@@ -719,7 +719,8 @@ while ($i < $imaxinloop) {
|
||||
}
|
||||
|
||||
if (!empty($arrayfields['t.status']['checked'])) {
|
||||
print '<td class="nowrap right">' . $tva_static->getLibStatut(5, $obj->alreadypayed) . '</td>';
|
||||
$totalallpayments = $obj->alreadypayed;
|
||||
print '<td class="nowrap right">' . $tva_static->getLibStatut(5, $totalallpayments) . '</td>';
|
||||
if (!$i) {
|
||||
$totalarray['nbfield']++;
|
||||
}
|
||||
|
||||
@@ -2451,7 +2451,16 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi
|
||||
} else {
|
||||
$morehtmlstatus .= '<span class="statusrefbuy">'.$object->getLibStatut(6, 1).'</span>';
|
||||
}
|
||||
} elseif (in_array($object->element, array('facture', 'invoice', 'invoice_supplier', 'chargesociales', 'loan', 'tva', 'salary'))) {
|
||||
} elseif (in_array($object->element, array('facture', 'invoice', 'invoice_supplier'))) {
|
||||
$totalallpayments = $object->getSommePaiement(0);
|
||||
$totalallpayments += $object->getSumCreditNotesUsed(0);
|
||||
$totalallpayments += $object->getSumDepositsUsed(0);
|
||||
$tmptxt = $object->getLibStatut(6, $totalallpayments);
|
||||
if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3)) {
|
||||
$tmptxt = $object->getLibStatut(5, $totalallpayments);
|
||||
}
|
||||
$morehtmlstatus .= $tmptxt;
|
||||
} elseif (in_array($object->element, array('chargesociales', 'loan', 'tva'))) {
|
||||
$tmptxt = $object->getLibStatut(6, $object->totalpaid);
|
||||
if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3)) {
|
||||
$tmptxt = $object->getLibStatut(5, $object->totalpaid);
|
||||
@@ -2971,6 +2980,10 @@ function dol_print_date($time, $format = '', $tzoutput = 'auto', $outputlangs =
|
||||
*/
|
||||
function dol_getdate($timestamp, $fast = false, $forcetimezone = '')
|
||||
{
|
||||
if ($timestamp === '') {
|
||||
return array();
|
||||
}
|
||||
|
||||
$datetimeobj = new DateTime();
|
||||
$datetimeobj->setTimestamp($timestamp); // Use local PHP server timezone
|
||||
if ($forcetimezone) {
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
* Copyright (C) 2013-2020 Philippe Grand <philippe.grand@atoo-net.com>
|
||||
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
|
||||
* Copyright (C) 2018-2020 Frédéric France <frederic.france@netlogic.fr>
|
||||
* Copyright (C) 2024 Éric Seigne <eric.seigne@cap-rel.fr>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@@ -300,11 +301,24 @@ class pdf_strato extends ModelePDFContract
|
||||
$tab_top_newpage = (!getDolGlobalInt('MAIN_PDF_DONOTREPEAT_HEAD') ? 42 : 10);
|
||||
|
||||
// Display notes
|
||||
if (!empty($object->note_public)) {
|
||||
$notetoshow = empty($object->note_public) ? '' : $object->note_public;
|
||||
|
||||
// Extrafields in note
|
||||
$extranote = $this->getExtrafieldsInHtml($object, $outputlangs);
|
||||
if (!empty($extranote)) {
|
||||
$notetoshow = dol_concatdesc($notetoshow, $extranote);
|
||||
}
|
||||
|
||||
if (!empty($notetoshow)) {
|
||||
$tab_top -= 2;
|
||||
|
||||
$substitutionarray = pdf_getSubstitutionArray($outputlangs, null, $object);
|
||||
complete_substitutions_array($substitutionarray, $outputlangs, $object);
|
||||
$notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs);
|
||||
$notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow);
|
||||
|
||||
$pdf->SetFont('', '', $default_font_size - 1);
|
||||
$pdf->writeHTMLCell(190, 3, $this->posxdesc - 1, $tab_top - 1, dol_htmlentitiesbr($object->note_public), 0, 1);
|
||||
$pdf->writeHTMLCell(190, 3, $this->posxdesc - 1, $tab_top - 1, dol_htmlentitiesbr($notetoshow), 0, 1);
|
||||
$nexY = $pdf->GetY();
|
||||
$height_note = $nexY - $tab_top;
|
||||
|
||||
|
||||
@@ -41,6 +41,7 @@ abstract class ModelePDFContract extends CommonDocGenerator
|
||||
* @var string Error code (or message)
|
||||
*/
|
||||
public $error = '';
|
||||
public $posxdesc;
|
||||
|
||||
|
||||
// phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps
|
||||
|
||||
@@ -280,8 +280,8 @@ class InterfaceWorkflowManager extends DolibarrTriggers
|
||||
$totalonlinkedelements += $element->total_ht;
|
||||
}
|
||||
}
|
||||
dol_syslog("Amount of linked reception = ".$totalonlinkedelements.", of invoice = ".$object->total_ht.", egality is ".($totalonlinkedelements == $object->total_ht), LOG_DEBUG);
|
||||
if ($totalonlinkedelements == $object->total_ht) {
|
||||
dol_syslog("Amount of linked reception = ".$totalonlinkedelements.", of invoice = ".$object->total_ht.", egality is ".((string) $totalonlinkedelements == (string) $object->total_ht), LOG_DEBUG);
|
||||
if ( (string) $totalonlinkedelements == (string) $object->total_ht) {
|
||||
foreach ($object->linkedObjects['reception'] as $element) {
|
||||
$ret = $element->setBilled();
|
||||
if ($ret < 0) {
|
||||
|
||||
@@ -2295,7 +2295,11 @@ class Expedition extends CommonObject
|
||||
$error ++;
|
||||
}
|
||||
|
||||
return $error;
|
||||
if (!$error) {
|
||||
return 1;
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2216,7 +2216,11 @@ if ($action == 'create') {
|
||||
}
|
||||
}
|
||||
|
||||
if (!$thumbshown) {
|
||||
if (!$thumbshown && $fileinfo['extension'] == 'pdf' && !empty($filepdf) && !empty($relativepath) && !empty($fileinfo['filename'])) {
|
||||
$formFile = new FormFile($db);
|
||||
$imgpreview = $formFile->showPreview([], $modulepart, $relativepath.'/'.$fileinfo['filename'].'.'.strtolower($fileinfo['extension']), 0);
|
||||
print $imgpreview;
|
||||
} elseif (!$thumbshown) {
|
||||
print img_mime($ecmfilesstatic->filename);
|
||||
}
|
||||
}
|
||||
@@ -2866,7 +2870,7 @@ if ($action != 'presend') {
|
||||
}
|
||||
|
||||
// Presend form
|
||||
$modelmail = 'expensereport';
|
||||
$modelmail = 'expensereport_send';
|
||||
$defaulttopic = 'SendExpenseReportRef';
|
||||
$diroutput = $conf->expensereport->dir_output;
|
||||
$trackid = 'exp'.$object->id;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* Copyright (C) 2004 Christophe Combelles <ccomb@free.fr>
|
||||
* Copyright (C) 2005 Marc Barilley <marc@ocebo.com>
|
||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2010-2020 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2010-2023 Juanjo Menent <jmenent@simnandez.es>
|
||||
* Copyright (C) 2013-2019 Philippe Grand <philippe.grand@atoo-net.com>
|
||||
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
|
||||
* Copyright (C) 2014-2016 Marcos García <marcosgdf@gmail.com>
|
||||
@@ -1201,10 +1201,14 @@ class FactureFournisseur extends CommonInvoice
|
||||
if (empty($this->total_tva)) {
|
||||
$this->total_tva = 0;
|
||||
}
|
||||
// if (isset($this->total_localtax1)) $this->total_localtax1=trim($this->total_localtax1);
|
||||
// if (isset($this->total_localtax2)) $this->total_localtax2=trim($this->total_localtax2);
|
||||
if (empty($this->total_localtax1)) {
|
||||
$this->total_localtax1 = 0;
|
||||
}
|
||||
if (empty($this->total_localtax2)) {
|
||||
$this->total_localtax2 = 0;
|
||||
}
|
||||
if (isset($this->total_ttc)) {
|
||||
$this->total_ttc = trim($this->total_ttc);
|
||||
$this->total_ttc = (float) $this->total_ttc;
|
||||
}
|
||||
if (isset($this->statut)) {
|
||||
$this->statut = (int) $this->statut;
|
||||
@@ -1262,8 +1266,8 @@ class FactureFournisseur extends CommonInvoice
|
||||
$sql .= " paye=".(isset($this->paye) ? ((int) $this->paye) : "0").",";
|
||||
$sql .= " close_code=".(isset($this->close_code) ? "'".$this->db->escape($this->close_code)."'" : "null").",";
|
||||
$sql .= " close_note=".(isset($this->close_note) ? "'".$this->db->escape($this->close_note)."'" : "null").",";
|
||||
$sql .= " localtax1=".(isset($this->localtax1) ? ((float) $this->localtax1) : "null").",";
|
||||
$sql .= " localtax2=".(isset($this->localtax2) ? ((float) $this->localtax2) : "null").",";
|
||||
$sql .= " localtax1=".(isset($this->total_localtax1) ? ((float) $this->total_localtax1) : "null").",";
|
||||
$sql .= " localtax2=".(isset($this->total_localtax2) ? ((float) $this->total_localtax2) : "null").",";
|
||||
$sql .= " total_ht=".(isset($this->total_ht) ? ((float) $this->total_ht) : "null").",";
|
||||
$sql .= " total_tva=".(isset($this->total_tva) ? ((float) $this->total_tva) : "null").",";
|
||||
$sql .= " total_ttc=".(isset($this->total_ttc) ? ((float) $this->total_ttc) : "null").",";
|
||||
|
||||
@@ -537,8 +537,8 @@ if (empty($reshook)) {
|
||||
$label = ((GETPOST('product_label') && GETPOST('product_label') != $prod->label) ? GETPOST('product_label') : '');
|
||||
|
||||
// Update if prices fields are defined
|
||||
$tva_tx = get_default_tva($mysoc, $object->thirdparty, $prod->id);
|
||||
$tva_npr = get_default_npr($mysoc, $object->thirdparty, $prod->id);
|
||||
$tva_tx = get_default_tva($object->thirdparty, $mysoc, $prod->id);
|
||||
$tva_npr = get_default_npr($object->thirdparty, $mysoc, $prod->id);
|
||||
if (empty($tva_tx)) {
|
||||
$tva_npr = 0;
|
||||
}
|
||||
@@ -546,7 +546,7 @@ if (empty($reshook)) {
|
||||
// Search the correct price into loaded array product_price_by_qty using id of array retrieved into POST['pqp'].
|
||||
$pqp = (GETPOST('pbq', 'int') ? GETPOST('pbq', 'int') : 0);
|
||||
|
||||
$datapriceofproduct = $prod->getSellPrice($mysoc, $object->thirdparty, $pqp);
|
||||
$datapriceofproduct = $prod->getSellPrice($object->thirdparty, $mysoc, $pqp);
|
||||
|
||||
$pu_ht = $datapriceofproduct['pu_ht'];
|
||||
$pu_ttc = $datapriceofproduct['pu_ttc'];
|
||||
@@ -661,8 +661,8 @@ if (empty($reshook)) {
|
||||
$buyingprice = price2num(GETPOST('buying_price' . $predef) != '' ? GETPOST('buying_price' . $predef) : ''); // If buying_price is '0', we must keep this value
|
||||
|
||||
// Local Taxes
|
||||
$localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty, $mysoc, $tva_npr);
|
||||
$localtax2_tx = get_localtax($tva_tx, 2, $object->thirdparty, $mysoc, $tva_npr);
|
||||
$localtax1_tx = get_localtax($tva_tx, 1, $mysoc, $object->thirdparty, $tva_npr);
|
||||
$localtax2_tx = get_localtax($tva_tx, 2, $mysoc, $object->thirdparty, $tva_npr);
|
||||
$info_bits = 0;
|
||||
if ($tva_npr) {
|
||||
$info_bits |= 0x01;
|
||||
@@ -780,7 +780,7 @@ if (empty($reshook)) {
|
||||
$special_code = 3;
|
||||
}
|
||||
|
||||
$remise_percent = price2num(GETPOST('remise_percent'), '', 2);
|
||||
$remise_percent = price2num(GETPOST('remise_percent'), '', 2) ?: 0;
|
||||
|
||||
// Check minimum price
|
||||
$productid = GETPOST('productid', 'int');
|
||||
@@ -1082,7 +1082,7 @@ if ($action == 'create') {
|
||||
$disableedit = 1;
|
||||
$disablemove = 1;
|
||||
$disableremove = 1;
|
||||
$object->printObjectLines('', $mysoc, $object->thirdparty, $lineid, 0); // No date selector for template invoice
|
||||
$object->printObjectLines('', $object->thirdparty, $mysoc, $lineid, 0); // No date selector for template invoice
|
||||
}
|
||||
|
||||
print "</table>\n";
|
||||
@@ -1571,7 +1571,7 @@ if ($action == 'create') {
|
||||
$canchangeproduct = 0;
|
||||
|
||||
$object->statut = $object->suspended;
|
||||
$object->printObjectLines($action, $mysoc, $object->thirdparty, $lineid, 0); // No date selector for template invoice
|
||||
$object->printObjectLines($action, $object->thirdparty, $mysoc, $lineid, 0); // No date selector for template invoice
|
||||
}
|
||||
|
||||
// Form to add new line
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* Copyright (C) 2004 Christophe Combelles <ccomb@free.fr>
|
||||
* Copyright (C) 2005 Marc Barilley <marc@ocebo.fr>
|
||||
* Copyright (C) 2005-2013 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2010-2019 Juanjo Menent <jmenent@2byte.es>
|
||||
* Copyright (C) 2010-2023 Juanjo Menent <jmenent@simnandez.es>
|
||||
* Copyright (C) 2013-2022 Philippe Grand <philippe.grand@atoo-net.com>
|
||||
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
|
||||
* Copyright (C) 2014-2016 Marcos García <marcosgdf@gmail.com>
|
||||
|
||||
@@ -1067,6 +1067,13 @@ class Holiday extends CommonObject
|
||||
$error++; $this->errors[] = "Error ".$this->db->lasterror();
|
||||
}
|
||||
|
||||
if (!$error) {
|
||||
$result = $this->insertExtraFields();
|
||||
if ($result < 0) {
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
if (!$error) {
|
||||
if (!$notrigger) {
|
||||
// Call trigger
|
||||
|
||||
@@ -572,3 +572,5 @@ UPDATE llx_menu SET url = '/fourn/paiement/list.php?mainmenu=billing&leftmenu=su
|
||||
|
||||
UPDATE llx_paiement SET ref = rowid WHERE ref IS NULL OR ref = '';
|
||||
|
||||
-- rename const WORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE to WORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE
|
||||
UPDATE llx_const SET name = 'WORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE' WHERE name = 'WORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE';
|
||||
|
||||
@@ -310,7 +310,7 @@ drop table tmp_societe_double;
|
||||
-- Sequence to removed duplicated values of llx_accounting_account. Run several times if you still have duplicate.
|
||||
drop table tmp_accounting_account_double;
|
||||
--select account_number, fk_pcg_version, max(rowid) as max_rowid, count(rowid) as count_rowid from llx_accounting_account where label is not null group by account_number, fk_pcg_version having count(rowid) >= 2;
|
||||
create table tmp_accounting_account_double as (select account_number, fk_pcg_version, max(rowid) as max_rowid, count(rowid) as count_rowid from llx_accounting_account where label is not null group by account_number, fk_pcg_version having count(rowid) >= 2);
|
||||
create table tmp_accounting_account_double as (select account_number, fk_pcg_version, entity, max(rowid) as max_rowid, count(rowid) as count_rowid from llx_accounting_account where label is not null group by account_number, fk_pcg_version, entity having count(rowid) >= 2);
|
||||
--select * from tmp_accounting_account_double;
|
||||
delete from llx_accounting_account where (rowid) in (select max_rowid from tmp_accounting_account_double); --update to avoid duplicate, delete to delete
|
||||
drop table tmp_accounting_account_double;
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=تصنيف أمر ش
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=تصنيف أمر شراء المصدر المرتبط على أنه تم استلامه عند التحقق من صحة الاستلام (وإذا كانت الكمية المستلمة من قبل جميع الاستقبالات هي نفسها الموجودة في أمر الشراء للتحديث)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=تصنيف أمر شراء المصدر المرتبط كما تم استلامه عند إغلاق الاستلام (وإذا كانت الكمية المستلمة من قبل جميع الاستدعاءات هي نفسها الموجودة في أمر الشراء للتحديث)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=عند إنشاء تذكرة ، قم بربط العقود المتاحة لمطابقة الطرف الثالث
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=عند ربط العقود ، ابحث بين تلك الخاصة بالشركات الأم
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classifica la comanda
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classifica com a rebuda l'ordre de compra d'origen enllaçada quan es valida una recepció (i si la quantitat rebuda per totes les recepcions és la mateixa que a l'ordre de compra per a actualitzar)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classifica com a rebuda l'ordre de compra d'origen enllaçada quan es tanca una recepció (i si la quantitat rebuda per totes les recepcions és la mateixa que a l'ordre de compra per a actualitzar)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Quan creeu un bitllet, enllaceu els contractes disponibles del tercer coincident
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=En enllaçar contractes, cerqueu entre els de les empreses matrius
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Zařadit propojenou o
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Dosbarthu archeb bryn
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Dosbarthwch archeb brynu ffynhonnell gysylltiedig fel y'i derbyniwyd pan ddilysir derbyniad (ac os yw'r swm a dderbynnir gan bob derbyniad yr un peth ag yn yr archeb brynu i ddiweddaru)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Dosbarthwch archeb brynu ffynhonnell gysylltiedig fel un a dderbyniwyd pan fydd derbyniad ar gau (ac os yw'r swm a dderbynnir gan bob derbynfa yr un peth ag yn yr archeb brynu i ddiweddaru)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Klassificer købt kø
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Klassificer linket kildeindkøbsordre som modtaget, når en modtagelse er valideret (og hvis mængden modtaget af alle modtagelser er den samme som i indkøbsordren, der skal opdateres)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Klassificer tilknyttet kildeindkøbsordre som modtaget, når en modtagelse lukkes (og hvis mængden modtaget af alle modtagelser er den samme som i indkøbsordren for at opdatere)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Klassificer modtagelser til "faktureret", når en tilknyttet købsfaktura er valideret (og hvis fakturabeløbet er det samme som det samlede beløb for de tilknyttede modtagelser)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Klassificer modtagelser til "faktureret", når en tilknyttet købsfaktura er valideret (og hvis fakturabeløbet er det samme som det samlede beløb for de tilknyttede modtagelser)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Når du opretter en billet, skal du linke tilgængelige kontrakter fra matchende tredjepart
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Når du sammenkæder kontrakter, søg blandt moderselskabers
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Kennzeichne die verkn
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Verknüpfte Lieferantenbestellung als eingegangen klassifizieren, wenn ein Wareneingang freigegeben wird (und wenn die von allen Wareneingängen eingegangene Menge mit der zu aktualisierenden Lieferantenbestellung übereinstimmt)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Verknüpfte Lieferantenbestellung als eingegangen klassifizieren, wenn ein Wareneingang geschlossen wird (und wenn die von allen Wareneingängen eingegangene Menge mit der zu aktualisierenden Bestellung übereinstimmt)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Wareneingänge als „abgerechnet“ klassifizieren, wenn eine verknüpfte Einkaufsrechnung freigegeben wird (und wenn der Rechnungsbetrag mit dem Gesamtbetrag der verknüpften Wareneingänge übereinstimmt)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Wareneingänge als „abgerechnet“ klassifizieren, wenn eine verknüpfte Einkaufsrechnung freigegeben wird (und wenn der Rechnungsbetrag mit dem Gesamtbetrag der verknüpften Wareneingänge übereinstimmt)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Verknüpfen Sie beim Erstellen eines Tickets verfügbare Verträge passender Geschäftspartner
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Beim Verknüpfen von Verträgen unter denen der Mutterunternehmen suchen
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Ταξινόμηση
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Ταξινόμηση της παραγγελίας αγοράς συνδεδεμένης πηγής ως ληφθείσας όταν επικυρωθεί μια παραλαβή (και εάν η ποσότητα που παρελήφθη από όλες τις παραλαβές είναι η ίδια με την παραγγελία αγοράς προς ενημέρωση)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Ταξινόμηση παραγγελίας αγοράς από συνδεδεμένη πηγή ως ληφθείσας όταν μια παραλαβή είναι κλειστή (και εάν η ποσότητα που παρελήφθη από όλες τις παραλαβές είναι η ίδια με την παραγγελία αγοράς προς ενημέρωση)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Ταξινόμηση των παραλαβών σε "τιμολογημένες" όταν επικυρώνεται ένα συνδεδεμένο τιμολόγιο αγοράς (και εάν το ποσό του τιμολογίου είναι το ίδιο με το συνολικό ποσό των συνδεδεμένων παραλαβών)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Ταξινόμηση των παραλαβών σε "τιμολογημένες" όταν επικυρώνεται ένα συνδεδεμένο τιμολόγιο αγοράς (και εάν το ποσό του τιμολογίου είναι το ίδιο με το συνολικό ποσό των συνδεδεμένων παραλαβών)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Κατά τη δημιουργία ενός ticket, συνδέστε τα διαθέσιμα συμβόλαια του αντίστοιχου τρίτου μέρους
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Όταν συνδέετε συμβόλαια, αναζητήστε μεταξύ αυτών των μητρικών εταιρειών
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked sourc
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Clasificar automátic
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Clasifique la orden de compra de fuente vinculada como recibida cuando se valida una recepción (y si la cantidad recibida por todas las recepciones es la misma que en la orden de compra para actualizar)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Clasifique la orden de compra de fuente vinculada como recibida cuando una recepción está cerrada (y si la cantidad recibida por todas las recepciones es la misma que en la orden de compra para actualizar)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Clasificar las recepciones como "facturadas" cuando se valida una factura de compra vinculada (y si el monto de la factura es el mismo que el monto total de las recepciones vinculadas)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Clasificar las recepciones como "facturadas" cuando se valida una factura de compra vinculada (y si el monto de la factura es el mismo que el monto total de las recepciones vinculadas)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Al crear un ticket, vincule los contratos disponibles de terceros coincidentes
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=A la hora de vincular contratos, buscar entre los de las casas matrices
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked sourc
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classer la ou les com
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classer le bon de commande source liée comme reçu lorsqu'une réception est validée (et si la quantité reçue par toutes les réceptions est la même que dans le bon de commande à mettre à jour)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classer le bon de commande source lié comme reçu lorsqu'une réception est clôturée (et si la quantité reçue par toutes les réceptions est la même que dans le bon de commande à mettre à jour)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classer les réceptions en "facturées" lorsqu'une facture d'achat liée est validée (et si le montant de la facture est égal au montant total des réceptions liées)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classer les réceptions en "facturées" lorsqu'une facture d'achat liée est validée (et si le montant de la facture est égal au montant total des réceptions liées)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=A la création d'un ticket, les contacts liés à au tiers sont liés au ticket.
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Les contacts liés au tiers du ticket sont utilisés pour le ticket
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Clasificar o pediment
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Clasifica o pedimento a cliente de orixe ligado como recibido cando se valida unha recepción (e se a cantidade recibida por todas as recepcións é a mesma que no pedimento que se actualiza)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Clasifica o pedimento a cliente de orixe ligado como recibido cando se pecha unha recepción (e se a cantidade recibida por todas as recepcións é a mesma que no pedimento que se actualiza)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Clasifica as recepcións como "facturadas" cando se valida unha factura de compra ligada (e se o importe da factura é o mesmo que o importe total das recepcións ligadas)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Clasifica as recepcións como "facturadas" cando se valida unha factura de compra ligada (e se o importe da factura é o mesmo que o importe total das recepcións ligadas)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Ao crear un ticket, liga os contratos dispoñibles do terceiro coincidente
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Ao ligar contratos, busca entre os das empresas matrices
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=A kapcsolt forrás be
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=A kapcsolt forrásból származó beszerzési rendelés besorolása beérkezettként, amikor egy fogadás érvényesül (és ha az összes fogadás által beérkezett mennyiség megegyezik a frissítendő beszerzési rendelésben szereplő mennyiséggel)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=A kapcsolt forrásból származó beszerzési rendelés besorolása a fogadás lezárásakor (és ha az összes fogadás által kapott mennyiség megegyezik a frissítendő beszerzési rendelésben szereplő mennyiséggel)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Jegy létrehozásakor kapcsolja össze a megfelelő harmadik fél elérhető szerződéseit
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=A szerződések összekapcsolásakor keressen az anyavállalatok szerződései között
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Klasifikasi sumber pe
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classifica "fatturato
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classificare l'ordine di acquisto di origine collegato come ricevuto quando viene convalidato un ricevimento (e se la quantità ricevuta da tutti i ricevimenti è la stessa dell'ordine di acquisto da aggiornare)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classificare l'ordine di acquisto di origine collegata come ricevuto alla chiusura di un ricevimento (e se la quantità ricevuta da tutti i ricevimenti è la stessa dell'ordine di acquisto da aggiornare)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Quando crei un biglietto, collega i contratti disponibili di terze parti corrispondenti
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Quando si collegano i contratti, cercare tra quelli delle società madri
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=仕入先の請求書
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=リンクされたソース購買発注を、領収は検証済なら受領したものとして指定する(ただし、全領収での受領済数量が更新する購買発注と同じである場合)。
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=リンクされたソース購買発注を、領収終了時に受領したものとして指定する(ただし、全領収での受領数量が更新する購買発注と同じである場合)。
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=リンクされた購入請求書が検証された場合 (および請求書の金額がリンクされた受信の合計金額と同じ場合) に、受信を「請求済み」に分類する。
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=リンクされた購入請求書が検証された場合 (および請求書の金額がリンクされた受信の合計金額と同じ場合) に、受信を「請求済み」に分類する。
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=チケットを作成するときは、一致するサードパーティの利用可能な契約をリンクする
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=契約をリンクする場合は、親会社の契約を検索すること
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Сатып алушы
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=ຈັດປະເພ
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Klasificēt saistīto
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Klasificēt saistītā avota pirkuma pasūtījumu kā saņemtu, kad saņemšana ir apstiprināta (un ja visu pieņemšanu saņemtais daudzums ir tāds pats kā atjaunināmajā pirkuma pasūtījumā)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Saistītā avota pirkuma pasūtījuma klasificēšana kā saņemta, kad pieņemšana ir slēgta (un ja visu pieņemšanu saņemtais daudzums ir tāds pats kā atjaunināmajā pirkuma pasūtījumā)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Klasificējiet pieņemšanas kā "rēķins", kad ir apstiprināts saistītais pirkuma rēķins (un ja rēķina summa ir tāda pati kā saistīto pieņemšanu kopējā summa)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Klasificējiet pieņemšanas kā "rēķins", kad ir apstiprināts saistītais pirkuma rēķins (un ja rēķina summa ir tāda pati kā saistīto pieņemšanu kopējā summa)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Veidojot biļeti, saistiet pieejamos atbilstošās trešās puses līgumus
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Saistot līgumus, meklējiet starp mātesuzņēmumu līgumiem
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Klassifiser kildekjø
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Klassifiser koblet kilde-innkjøpsordre som mottatt når et mottak er validert (og hvis antallet mottatt av alle mottak er det samme som i innkjøpsordren som skal oppdateres)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Klassifiser koblet kilde-innkjøpsordre som mottatt når et mottak er stengt (og hvis antallet mottatt av alle mottak er det samme som i innkjøpsordren som skal oppdatere)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Klassifiser mottak til "fakturert" når en koblet kjøpsfaktura er validert (og hvis beløpet på fakturaen er det samme som totalbeløpet for de tilknyttede mottakene)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Klassifiser mottak til "fakturert" når en koblet kjøpsfaktura er validert (og hvis beløpet på fakturaen er det samme som totalbeløpet for de tilknyttede mottakene)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Når du oppretter en billett, kobler du tilgjengelige kontrakter til samsvarende tredjepart
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Når du kobler sammen kontrakter, søk blant de fra morselskapene
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classificeer gekoppel
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classificeer inkooporder met gekoppelde bron als ontvangen wanneer een ontvangst is gevalideerd (en als de hoeveelheid die door alle ontvangsten is ontvangen hetzelfde is als in de inkooporder die moet worden bijgewerkt)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classificeer inkooporder met gekoppelde bron als ontvangen wanneer een ontvangst wordt gesloten (en als de hoeveelheid die door alle ontvangsten wordt ontvangen hetzelfde is als in de inkooporder die moet worden bijgewerkt)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classificeer ontvangsten als "gefactureerd" wanneer een gekoppelde aankoopfactuur gevalideerd is (en als het bedrag van de factuur gelijk is aan het totaalbedrag van de gekoppelde ontvangsten)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classificeer ontvangsten als "gefactureerd" wanneer een gekoppelde aankoopfactuur gevalideerd is (en als het bedrag van de factuur gelijk is aan het totaalbedrag van de gekoppelde ontvangsten)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Koppel bij het aanmaken van een ticket beschikbare contracten van bijpassende derde partijen
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Zoek bij het koppelen van contracten onder die van moederbedrijven
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Sklasyfikuj zamówien
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Clasificați comanda
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Clasifică comanda de achiziție sursă asociată ca primită atunci când o recepție este validată (și dacă cantitatea primită de toate recepțiile este aceeași cu cea din comanda de achiziţie pentru actualizare)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Clasifică comanda de achiziție sursă asociată ca primită atunci când o recepție este închisă (și dacă cantitatea primită de toate recepțiile este aceeași cu cea din comanda de achiziţie pentru actualizare)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Clasifică recepțiile ca "facturate" atunci când o factură de achiziție asociată este validată (și dacă suma facturii este aceeași cu suma totală a recepțiilor asociate)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Clasifică recepțiile ca "facturate" atunci când o factură de achiziție asociată este validată (și dacă suma facturii este aceeași cu suma totală a recepțiilor asociate)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=La crearea unui tichet , asociază contractele disponibile ale terților care se potrivesc
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Când se asociază contracte, caută printre cele ale companiilor-mamă
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Классифици
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Классифицировать связанный исходный заказ на покупку как полученный, когда прием подтвержден (и если количество, полученное всеми приемами, такое же, как в заказе на покупку для обновления)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Классифицировать связанный исходный заказ на покупку как полученный, когда прием закрыт (и если количество, полученное всеми приемами, такое же, как в заказе на покупку для обновления)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=При создании тикета свяжите доступные контракты соответствующей третьей стороны
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=При привязке договоров искать среди договоров материнских компаний
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Razvrsti naročilo po
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Razvrsti naročilo povezanega vira kot prejeto, ko je sprejem potrjen (in če je količina, ki so jo prejeli vsi sprejemi, enaka kot v naročilu za posodobitev)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Razvrstite naročilo povezanega vira kot prejeto, ko je sprejem zaprt (in če je količina, ki so jo prejeli vsi sprejemi, enaka kot v naročilu za posodobitev)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Prejeme razvrstite v »zaračunane«, ko je povezan račun za nakup potrjen (in če je znesek računa enak skupnemu znesku povezanih prejemov)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Prejeme razvrstite v »zaračunane«, ko je povezan račun za nakup potrjen (in če je znesek računa enak skupnemu znesku povezanih prejemov)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Ko ustvarjate vstopnico, povežite razpoložljive pogodbe z partnerjem
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Pri povezovanju pogodb iščite med pogodbami matičnih podjetij
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Märk länkad inköps
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Märk länkad inköpsorder som mottagen när en mottagning bekräftas (och om antalet som tas emot i alla mottagningar är densamma som i inköpsordern som ska uppdateras)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Märk länkad inköpsorder som mottagen när en mottagning stängs (och om antalet som tas emot i alla mottagningar är densamma som i inköpsordern som ska uppdateras)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Märk mottagningar som "fakturerade" när en länkad inköpsfaktura bekräftas (och om fakturabeloppet är detsamma som det totala beloppet för de länkade mottagningarna)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Märk mottagningar som "fakturerade" när en länkad inköpsfaktura bekräftas (och om fakturabeloppet är detsamma som det totala beloppet för de länkade mottagningarna)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=När du skapar ett ärende, länka tillgängliga kontrakt från matchande tredjepart
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=När du kopplar kontrakt sök bland moderbolagens
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Panga agizo la ununuz
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Bainisha agizo la ununuzi la chanzo kilichounganishwa kama lilivyopokelewa wakati mapokezi yamethibitishwa (na ikiwa kiasi kilichopokelewa na mapokezi yote ni sawa na katika agizo la ununuzi la kusasisha)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Panga agizo la ununuzi la chanzo kilichounganishwa kama lilivyopokelewa wakati upokezi umefungwa (na ikiwa kiasi kilichopokelewa na mapokezi yote ni sawa na katika agizo la ununuzi la kusasishwa)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Panga mapokezi kuwa "yanayotozwa" wakati ankara ya ununuzi iliyounganishwa imethibitishwa (na ikiwa kiasi cha ankara ni sawa na jumla ya kiasi cha mapokezi yaliyounganishwa)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Panga mapokezi kuwa "yanayotozwa" wakati ankara ya ununuzi iliyounganishwa imethibitishwa (na ikiwa kiasi cha ankara ni sawa na jumla ya kiasi cha mapokezi yaliyounganishwa)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Wakati wa kuunda tikiti, unganisha mikataba inayopatikana ya watu wengine wanaolingana
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Wakati wa kuunganisha mikataba, tafuta kati ya wale wa makampuni ya wazazi
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=விற்பனை
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=ஒரு வரவேற்பு சரிபார்க்கப்படும் போது பெறப்பட்ட இணைக்கப்பட்ட மூல கொள்முதல் ஆர்டரை வகைப்படுத்தவும் (மற்றும் அனைத்து வரவேற்புகளிலும் பெறப்பட்ட அளவு வாங்குதல் ஆர்டரில் உள்ளதைப் போலவே புதுப்பிக்கவும்)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=ஒரு வரவேற்பு மூடப்படும் போது பெறப்பட்ட இணைக்கப்பட்ட மூல கொள்முதல் ஆர்டரை வகைப்படுத்தவும் (மற்றும் அனைத்து வரவேற்புகளிலும் பெறப்பட்ட அளவு வாங்குதல் ஆர்டரில் உள்ளதைப் போலவே புதுப்பிக்கவும்)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Фармоиши ха
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Tedarikçi faturası
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Класифікув
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Класифікувати пов’язане джерело замовлення на закупівлю як отримане, коли прийом підтверджено (і якщо кількість, отримана всіма прийомами, така ж, як у замовленні на покупку для оновлення)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Класифікувати замовлення на закупівлю з пов’язаним джерелом як отримане, коли прийом закритий (і якщо кількість, отримана всіма прийомами, така ж, як у замовленні на покупку для оновлення)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=При створенні квитка зв’яжіть доступні контракти відповідної третьої сторони
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Зв’язуючи договори, шукайте серед тих материнських компаній
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=جب وینڈر ان
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=جب کسی استقبالیہ کی توثیق ہو جاتی ہے تو منسلک ذریعہ خریداری کے آرڈر کو موصول ہونے کے مطابق درجہ بندی کریں (اور اگر تمام استقبالیوں کو موصول ہونے والی مقدار وہی ہے جو اپ ڈیٹ کرنے کے لیے خریداری آرڈر میں ہے)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=ریسیپشن بند ہونے پر موصول ہونے والے لنکڈ سورس پرچیز آرڈر کی درجہ بندی کریں (اور اگر تمام ریسپشنز کو موصول ہونے والی مقدار وہی ہے جو اپ ڈیٹ کرنے کے لیے خریداری آرڈر میں ہے)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Sotib oluvchi hisob-f
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Bog'langan manba sotib olish buyurtmasini qabul qilish tasdiqlanganda olingan deb tasniflang (va barcha qabullar tomonidan qabul qilingan miqdor yangilash uchun xarid buyurtmasi bilan bir xil bo'lsa)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Bog'langan manba buyurtmasini qabulxona yopilganda olingan deb tasniflang (va barcha qabulxonalar tomonidan qabul qilingan miqdor yangilash uchun xarid buyurtmasidagi bilan bir xil bo'lsa)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=Chipta yaratishda, mos keladigan uchinchi tomonning mavjud shartnomalarini bog'lang
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=Shartnomalarni ulashda, ota-onalar kompaniyalari orasidan qidiring
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked sourc
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=验证接收时将链接源采购订单分类为已接收(并且如果所有接收收到的数量与要更新的采购订单中的数量相同)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=当接收关闭时将链接源采购订单分类为已接收(并且如果所有接收收到的数量与要更新的采购订单中的数量相同)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=当链接的采购发票经过验证(并且发票金额与链接的收款总金额相同时),将收款分类为“已开票”
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=当链接的采购发票经过验证(并且发票金额与链接的收款总金额相同时),将收款分类为“已开票”
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=创建服务工单时,链接其匹配的合作方的可用合同
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked sourc
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=When creating a ticket, link available contracts of matching thirdparty
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=When linking contracts, search among those of parents companies
|
||||
|
||||
@@ -22,7 +22,7 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=當供應商發票已
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=在驗證收貨時將連結的來源採購訂單分類為已收貨(並且如果所有收貨的數量與要更新的採購訂單中的數量相同)
|
||||
descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=收貨結束時將連結的來源採購訂單分類為已收貨(如果所有收貨的數量與要更新的採購訂單中的數量相同)
|
||||
# Autoclassify purchase invoice
|
||||
descWORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
descWORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE=Classify receptions to "billed" when a linked purchase invoice is validated (and if the amount of the invoice is the same as the total amount of the linked receptions)
|
||||
# Automatically link ticket to contract
|
||||
descWORKFLOW_TICKET_LINK_CONTRACT=當建立服務單時,連結符合之合作方的可用合約
|
||||
descWORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS=當連結合約時,在母公司的合約中搜尋
|
||||
|
||||
@@ -196,17 +196,20 @@ if ($action == 'order' && GETPOST('valid')) {
|
||||
// TODO Get desc in language of thirdparty
|
||||
}
|
||||
|
||||
$line->tva_tx = $productsupplier->vatrate_supplier;
|
||||
$tva = $line->tva_tx / 100;
|
||||
|
||||
// If we use multicurrency
|
||||
if (isModEnabled('multicurrency') && !empty($productsupplier->fourn_multicurrency_code) && $productsupplier->fourn_multicurrency_code != $conf->currency) {
|
||||
$line->multicurrency_code = $productsupplier->fourn_multicurrency_code;
|
||||
$line->fk_multicurrency = $productsupplier->fourn_multicurrency_id;
|
||||
$line->multicurrency_subprice = $productsupplier->fourn_multicurrency_unitprice;
|
||||
$line->multicurrency_code = $productsupplier->fourn_multicurrency_code;
|
||||
$line->fk_multicurrency = $productsupplier->fourn_multicurrency_id;
|
||||
$line->multicurrency_subprice = $productsupplier->fourn_multicurrency_unitprice;
|
||||
$line->multicurrency_total_ht = $line->multicurrency_subprice * $qty;
|
||||
$line->multicurrency_total_tva = $line->multicurrency_total_ht * $tva;
|
||||
$line->multicurrency_total_ttc = $line->multicurrency_total_ht + $line->multicurrency_total_tva;
|
||||
}
|
||||
|
||||
$line->tva_tx = $productsupplier->vatrate_supplier;
|
||||
$line->subprice = $productsupplier->fourn_pu;
|
||||
$line->total_ht = $productsupplier->fourn_pu * $qty;
|
||||
$tva = $line->tva_tx / 100;
|
||||
$line->total_tva = $line->total_ht * $tva;
|
||||
$line->total_ttc = $line->total_ht + $line->total_tva;
|
||||
$line->remise_percent = $productsupplier->remise_percent;
|
||||
|
||||
@@ -69,10 +69,10 @@ if (GETPOST('btn_view_ticket_list')) {
|
||||
unset($_SESSION['track_id_customer']);
|
||||
unset($_SESSION['email_customer']);
|
||||
}
|
||||
if (isset($_SESSION['track_id_customer'])) {
|
||||
if (empty($track_id) && isset($_SESSION['track_id_customer'])) {
|
||||
$track_id = $_SESSION['track_id_customer'];
|
||||
}
|
||||
if (isset($_SESSION['email_customer'])) {
|
||||
if (empty($email) && isset($_SESSION['email_customer'])) {
|
||||
$email = strtolower($_SESSION['email_customer']);
|
||||
}
|
||||
|
||||
@@ -209,6 +209,7 @@ if ($action == "view_ticketlist") {
|
||||
|
||||
// Store current page url
|
||||
$url_page_current = dol_buildpath('/public/ticket/list.php', 1);
|
||||
$contextpage = $url_page_current;
|
||||
|
||||
// Do we click on purge search criteria ?
|
||||
if (GETPOST("button_removefilter_x")) {
|
||||
@@ -266,7 +267,7 @@ if ($action == "view_ticketlist") {
|
||||
if (isset($extrafields->attributes[$object->table_element]['label']) && is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
|
||||
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
|
||||
if ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate') {
|
||||
$enabled = abs(dol_eval($extrafields->attributes[$object->table_element]['list'][$key], 1, 1, 0));
|
||||
$enabled = abs((int) dol_eval($extrafields->attributes[$object->table_element]['list'][$key], 1, 1, 0));
|
||||
$enabled = (($enabled == 0 || $enabled == 3) ? 0 : $enabled);
|
||||
$arrayfields["ef.".$key] = array('label' => $extrafields->attributes[$object->table_element]['label'][$key], 'checked' => ($extrafields->attributes[$object->table_element]['list'][$key] < 0) ? 0 : 1, 'position' => $extrafields->attributes[$object->table_element]['pos'][$key], 'enabled' => $enabled && $extrafields->attributes[$object->table_element]['perms'][$key]);
|
||||
}
|
||||
|
||||
@@ -1058,6 +1058,11 @@ class Reception extends CommonObject
|
||||
$mouvS->origin = null;
|
||||
|
||||
$result = $mouvS->livraison($user, $obj->fk_product, $obj->fk_entrepot, $obj->qty, 0, $langs->trans("ReceptionDeletedInDolibarr", $this->ref), '', $obj->eatby, $obj->sellby, $obj->batch); // Price is set to 0, because we don't want to see WAP changed
|
||||
if ($result < 0) {
|
||||
$error++;
|
||||
$this->error = $mouvS->error;
|
||||
$this->errors = $mouvS->errors;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$error++; $this->errors[] = "Error ".$this->db->lasterror();
|
||||
@@ -1667,7 +1672,7 @@ class Reception extends CommonObject
|
||||
}
|
||||
|
||||
/**
|
||||
* Classify the reception as invoiced (used when WORKFLOW_EXPEDITION_CLASSIFY_CLOSED_INVOICE is on)
|
||||
* Classify the reception as invoiced (used when WORKFLOW_RECEPTION_CLASSIFY_CLOSED_INVOICE is on)
|
||||
*
|
||||
* @return int <0 if ko, >0 if ok
|
||||
*/
|
||||
|
||||
@@ -889,7 +889,7 @@ class Societe extends CommonObject
|
||||
if (empty($this->status)) {
|
||||
$this->status = 0;
|
||||
}
|
||||
$this->name = $this->name ?trim($this->name) : trim($this->nom);
|
||||
$this->name = $this->name ? trim($this->name) : trim((string) $this->nom);
|
||||
$this->setUpperOrLowerCase();
|
||||
$this->nom = $this->name; // For backward compatibility
|
||||
if (empty($this->client)) {
|
||||
@@ -898,12 +898,12 @@ class Societe extends CommonObject
|
||||
if (empty($this->fournisseur)) {
|
||||
$this->fournisseur = 0;
|
||||
}
|
||||
$this->import_key = trim($this->import_key);
|
||||
$this->import_key = trim((string) $this->import_key);
|
||||
|
||||
$this->accountancy_code_customer = trim($this->code_compta);
|
||||
$this->accountancy_code_supplier = trim($this->code_compta_fournisseur);
|
||||
$this->accountancy_code_buy = trim($this->accountancy_code_buy);
|
||||
$this->accountancy_code_sell = trim($this->accountancy_code_sell);
|
||||
$this->accountancy_code_customer = trim((string) $this->code_compta);
|
||||
$this->accountancy_code_supplier = trim((string) $this->code_compta_fournisseur);
|
||||
$this->accountancy_code_buy = trim((string) $this->accountancy_code_buy);
|
||||
$this->accountancy_code_sell = trim((string) $this->accountancy_code_sell);
|
||||
|
||||
if (!empty($this->multicurrency_code)) {
|
||||
$this->fk_multicurrency = MultiCurrency::getIdFromCode($this->db, $this->multicurrency_code);
|
||||
@@ -1288,34 +1288,34 @@ class Societe extends CommonObject
|
||||
$now = dol_now();
|
||||
|
||||
// Clean parameters
|
||||
$this->id = $id;
|
||||
$this->entity = ((isset($this->entity) && is_numeric($this->entity)) ? $this->entity : $conf->entity);
|
||||
$this->name = $this->name ? trim($this->name) : trim($this->nom);
|
||||
$this->nom = $this->name; // For backward compatibility
|
||||
$this->name_alias = trim($this->name_alias);
|
||||
$this->ref_ext = trim($this->ref_ext);
|
||||
$this->address = $this->address ?trim($this->address) : trim($this->address);
|
||||
$this->zip = $this->zip ?trim($this->zip) : trim($this->zip);
|
||||
$this->town = $this->town ?trim($this->town) : trim($this->town);
|
||||
$this->state_id = trim($this->state_id);
|
||||
$this->country_id = ($this->country_id > 0) ? $this->country_id : 0;
|
||||
$this->phone = trim($this->phone);
|
||||
$this->id = $id;
|
||||
$this->entity = ((isset($this->entity) && is_numeric($this->entity)) ? $this->entity : $conf->entity);
|
||||
$this->name = $this->name ? trim($this->name) : trim((string) $this->nom);
|
||||
$this->nom = $this->name; // For backward compatibility
|
||||
$this->name_alias = trim((string) $this->name_alias);
|
||||
$this->ref_ext = (empty($this->ref_ext) ? '' : trim($this->ref_ext));
|
||||
$this->address = trim((string) $this->address);
|
||||
$this->zip = trim((string) $this->zip);
|
||||
$this->town = trim((string) $this->town);
|
||||
$this->state_id = (is_numeric($this->state_id)) ? (int) trim($this->state_id) : 0;
|
||||
$this->country_id = ($this->country_id > 0) ? $this->country_id : 0;
|
||||
$this->phone = trim((string) $this->phone);
|
||||
$this->phone = preg_replace("/\s/", "", $this->phone);
|
||||
$this->phone = preg_replace("/\./", "", $this->phone);
|
||||
$this->fax = trim($this->fax);
|
||||
$this->fax = trim((string) $this->fax);
|
||||
$this->fax = preg_replace("/\s/", "", $this->fax);
|
||||
$this->fax = preg_replace("/\./", "", $this->fax);
|
||||
$this->email = trim($this->email);
|
||||
$this->url = $this->url ?clean_url($this->url, 0) : '';
|
||||
$this->note_private = trim($this->note_private);
|
||||
$this->note_public = trim($this->note_public);
|
||||
$this->idprof1 = trim($this->idprof1);
|
||||
$this->idprof2 = trim($this->idprof2);
|
||||
$this->idprof3 = trim($this->idprof3);
|
||||
$this->idprof4 = trim($this->idprof4);
|
||||
$this->idprof5 = (!empty($this->idprof5) ?trim($this->idprof5) : '');
|
||||
$this->idprof6 = (!empty($this->idprof6) ?trim($this->idprof6) : '');
|
||||
$this->prefix_comm = trim($this->prefix_comm);
|
||||
$this->email = trim((string) $this->email);
|
||||
$this->url = $this->url ? clean_url($this->url, 0) : '';
|
||||
$this->note_private = (empty($this->note_private) ? '' : trim($this->note_private));
|
||||
$this->note_public = (empty($this->note_public) ? '' : trim($this->note_public));
|
||||
$this->idprof1 = trim((string) $this->idprof1);
|
||||
$this->idprof2 = trim((string) $this->idprof2);
|
||||
$this->idprof3 = trim((string) $this->idprof3);
|
||||
$this->idprof4 = trim((string) $this->idprof4);
|
||||
$this->idprof5 = (!empty($this->idprof5) ? trim($this->idprof5) : '');
|
||||
$this->idprof6 = (!empty($this->idprof6) ? trim($this->idprof6) : '');
|
||||
$this->prefix_comm = trim((string) $this->prefix_comm);
|
||||
$this->outstanding_limit = price2num($this->outstanding_limit);
|
||||
$this->order_min_amount = price2num($this->order_min_amount);
|
||||
$this->supplier_order_min_amount = price2num($this->supplier_order_min_amount);
|
||||
|
||||
@@ -197,7 +197,7 @@ $sql .= " GROUP BY g.rowid, g.nom, g.note, g.entity, g.datec, g.tms";
|
||||
$nbtotalofrecords = '';
|
||||
if (!getDolGlobalInt('MAIN_DISABLE_FULL_SCANLIST')) {
|
||||
/* The fast and low memory method to get and count full list converts the sql into a sql count */
|
||||
$sqlforcount = preg_replace('/^'.preg_quote($sqlfields, '/').'/', 'SELECT COUNT(*) as nbtotalofrecords', $sql);
|
||||
$sqlforcount = preg_replace('/^'.preg_quote($sqlfields, '/').'/', 'SELECT COUNT(DISTINCT g.rowid) as nbtotalofrecords', $sql);
|
||||
$sqlforcount = preg_replace('/GROUP BY .*$/', '', $sqlforcount);
|
||||
$resql = $db->query($sqlforcount);
|
||||
if ($resql) {
|
||||
|
||||
Reference in New Issue
Block a user