dolibarr 18.0.6
CommonObject Class Reference

Parent class of all other business classes (invoices, contracts, proposals, orders, ...) More...

Inheritance diagram for CommonObject:
Collaboration diagram for CommonObject:

Public Member Functions

 setErrorsFromObject ($object)
 setErrorsFromObject
 
 getTooltipContentArray ($params)
 Return array of datas to show into a tooltip.
 
 getTooltipContent ($params)
 getTooltipContent
 
 errorsToString ()
 Method to output saved errors.
 
 getFormatedCustomerRef ($objref)
 Return customer ref for screen output.
 
 getFormatedSupplierRef ($objref)
 Return supplier ref for screen output.
 
 getFullAddress ($withcountry=0, $sep="\n", $withregion=0, $extralangcode='')
 Return full address of contact.
 
 getLastMainDocLink ($modulepart, $initsharekey=0, $relativelink=0)
 Return the link of last main doc file for direct public download.
 
 add_contact ($fk_socpeople, $type_contact, $source='external', $notrigger=0)
 Add a link between element $this->element and a contact.
 
 copy_linked_contact ($objFrom, $source='internal')
 Copy contact from one element to current.
 
 update_contact ($rowid, $statut, $type_contact_id=0, $fk_socpeople=0)
 Update a link to contact line.
 
 delete_contact ($rowid, $notrigger=0)
 Delete a link to contact line.
 
 delete_linked_contact ($source='', $code='')
 Delete all links between an object $this and all its contacts in llx_element_contact.
 
 liste_contact ($statusoflink=-1, $source='external', $list=0, $code='', $status=-1, $arrayoftcids=array())
 Get array of all contacts for an object.
 
 swapContactStatus ($rowid)
 Update status of a contact linked to object.
 
 liste_type_contact ($source='internal', $order='position', $option=0, $activeonly=0, $code='')
 Return array with list of possible values for type of contacts.
 
 listeTypeContacts ($source='internal', $option=0, $activeonly=0, $code='', $element='', $excludeelement='')
 Return array with list of possible values for type of contacts.
 
 getIdContact ($source, $code, $status=0)
 Return id of contacts for a source and a contact code.
 
 fetch_contact ($contactid=null)
 Load object contact with id=$this->contact_id into $this->contact.
 
 fetch_thirdparty ($force_thirdparty_id=0)
 Load the third party of object, from id $this->socid or $this->fk_soc, into this->thirdparty.
 
 fetchOneLike ($ref)
 Looks for an object with ref matching the wildcard provided It does only work when $this->table_ref_field is set.
 
 fetch_barcode ()
 Load data for barcode into properties ->barcode_type* Properties ->barcode_type that is id of barcode.
 
 fetch_project ()
 Load the project with id $this->fk_project into this->project.
 
 fetch_projet ()
 Load the project with id $this->fk_project into this->project.
 
 fetch_product ()
 Load the product with id $this->fk_product into this->product.
 
 fetch_user ($userid)
 Load the user with id $userid into this->user.
 
 fetch_origin ()
 Read linked origin object.
 
 fetchObjectFrom ($table, $field, $key, $element=null)
 Load object from specific field.
 
 getValueFrom ($table, $id, $field)
 Getter generic.
 
 setValueFrom ($field, $value, $table='', $id=null, $format='', $id_field='', $fuser=null, $trigkey='', $fk_user_field='fk_user_modif')
 Setter generic.
 
 load_previous_next_ref ($filter, $fieldid, $nodbprefix=0)
 Load properties id_previous and id_next by comparing $fieldid with $this->ref.
 
 getListContactId ($source='external')
 Return list of id of contacts of object.
 
 setProject ($projectid, $notrigger=0)
 Link element with a project.
 
 setPaymentMethods ($id)
 Change the payments methods.
 
 setMulticurrencyCode ($code)
 Change the multicurrency code.
 
 setPaymentTerms ($id, $deposit_percent=null)
 Change the payments terms.
 
 setTransportMode ($id)
 Change the transport mode methods.
 
 setRetainedWarrantyPaymentTerms ($id)
 Change the retained warranty payments terms.
 
 setDeliveryAddress ($id)
 Define delivery address.
 
 setShippingMethod ($shipping_method_id, $notrigger=false, $userused=null)
 Change the shipping method.
 
 setWarehouse ($warehouse_id)
 Change the warehouse.
 
 setDocModel ($user, $modelpdf)
 Set last model used by doc generator.
 
 setBankAccount ($fk_account, $notrigger=false, $userused=null)
 Change the bank account.
 
 line_order ($renum=false, $rowidorder='ASC', $fk_parent_line=true)
 Save a new position (field rang) for details lines.
 
 getChildrenOfLine ($id, $includealltree=0)
 Get children of line.
 
 line_up ($rowid, $fk_parent_line=true)
 Update a line to have a lower rank.
 
 line_down ($rowid, $fk_parent_line=true)
 Update a line to have a higher rank.
 
 updateRangOfLine ($rowid, $rang)
 Update position of line (rang)
 
 line_ajaxorder ($rows)
 Update position of line with ajax (rang)
 
 updateLineUp ($rowid, $rang)
 Update position of line up (rang)
 
 updateLineDown ($rowid, $rang, $max)
 Update position of line down (rang)
 
 getRangOfLine ($rowid)
 Get position of line (rang)
 
 getIdOfLine ($rang)
 Get rowid of the line relative to its position.
 
 line_max ($fk_parent_line=0)
 Get max value used for position of line (rang)
 
 update_ref_ext ($ref_ext)
 Update external ref of element.
 
 update_note ($note, $suffix='', $notrigger=0)
 Update note of element.
 
 update_note_public ($note)
 Update public note (kept for backward compatibility)
 
 update_price ($exclspec=0, $roundingadjust='none', $nodatabaseupdate=0, $seller=null)
 Update total_ht, total_ttc, total_vat, total_localtax1, total_localtax2 for an object (sum of lines).
 
 add_object_linked ($origin=null, $origin_id=null, $f_user=null, $notrigger=0)
 Add an object link into llx_element_element.
 
 fetchObjectLinked ($sourceid=null, $sourcetype='', $targetid=null, $targettype='', $clause='OR', $alsosametype=1, $orderby='sourcetype', $loadalsoobjects=1)
 Fetch array of objects linked to current object (object of enabled modules only).
 
 clearObjectLinkedCache ()
 Clear the cache saying that all linked object were already loaded.
 
 updateObjectLinked ($sourceid=null, $sourcetype='', $targetid=null, $targettype='', $f_user=null, $notrigger=0)
 Update object linked of a current object.
 
 deleteObjectLinked ($sourceid=null, $sourcetype='', $targetid=null, $targettype='', $rowid='', $f_user=null, $notrigger=0)
 Delete all links between an object $this.
 
 setStatut ($status, $elementId=null, $elementType='', $trigkey='', $fieldstatus='fk_statut')
 Set status of an object.
 
 getCanvas ($id=0, $ref='')
 Load type of canvas of an object if it exists.
 
 getSpecialCode ($lineid)
 Get special code of a line.
 
 isObjectUsed ($id=0, $entity=0)
 Function to check if an object is used by others (by children).
 
 hasProductsOrServices ($predefined=-1)
 Function to say how many lines object contains.
 
 getTotalDiscount ()
 Function that returns the total amount HT of discounts applied for all lines.
 
 getTotalWeightVolume ()
 Return into unit=0, the calculated total of weight and volume of all lines * qty Calculate by adding weight and volume of each product line, so properties ->volume/volume_units/weight/weight_units must be loaded on line.
 
 setExtraParameters ()
 Set extra parameters.
 
 formAddObjectLine ($dateSelector, $seller, $buyer, $defaulttpldir='/core/tpl')
 Show add free and predefined products/services form.
 
 printObjectLines ($action, $seller, $buyer, $selected=0, $dateSelector=0, $defaulttpldir='/core/tpl')
 Return HTML table for object lines TODO Move this into an output class file (htmlline.class.php) If lines are into a template, title must also be into a template But for the moment we don't know if it's possible as we keep a method available on overloaded objects.
 
 printObjectLine ($action, $line, $var, $num, $i, $dateSelector, $seller, $buyer, $selected=0, $extrafields=null, $defaulttpldir='/core/tpl')
 Return HTML content of a detail line TODO Move this into an output class file (htmlline.class.php)
 
 printOriginLinesList ($restrictlist='', $selectedLines=array())
 Return HTML table table of source object lines TODO Move this and previous function into output html class file (htmlline.class.php).
 
 printOriginLine ($line, $var, $restrictlist='', $defaulttpldir='/core/tpl', $selectedLines=array())
 Return HTML with a line of table array of source object lines TODO Move this and previous function into output html class file (htmlline.class.php).
 
 add_element_resource ($resource_id, $resource_type, $busy=0, $mandatory=0)
 Add resources to the current object : add entry into llx_element_resources Need $this->element & $this->id.
 
 delete_resource ($rowid, $element, $notrigger=0)
 Delete a link to resource line.
 
 __clone ()
 Overwrite magic function to solve problem of cloning object that are kept as references.
 
 indexFile ($destfull, $update_main_doc_field)
 Index a file into the ECM database.
 
 addThumbs ($file)
 Build thumb.
 
 delThumbs ($file)
 Delete thumbs.
 
 getDefaultCreateValueFor ($fieldname, $alternatevalue=null, $type='alphanohtml')
 Return the default value to use for a field when showing the create form of object.
 
 call_trigger ($triggerName, $user)
 Call trigger based on this instance.
 
 fetchValuesForExtraLanguages ()
 Function to get alternative languages of a data into $this->array_languages This method is NOT called by method fetch of objects but must be called separately.
 
 setValuesForExtraLanguages ($onlykey='')
 Fill array_options property of object by extrafields value (using for data sent by forms)
 
 fetchNoCompute ($id)
 Function to make a fetch but set environment to avoid to load computed values before.
 
 fetch_optionals ($rowid=null, $optionsArray=null)
 Function to get extra fields of an object into $this->array_options This method is in most cases called by method fetch of objects but you can call it separately.
 
 deleteExtraFields ()
 Delete all extra fields values for the current object.
 
 insertExtraFields ($trigger='', $userused=null)
 Add/Update all extra fields values for the current object.
 
 insertExtraLanguages ($trigger='', $userused=null)
 Add/Update all extra fields values for the current object.
 
 updateExtraField ($key, $trigger=null, $userused=null)
 Update 1 extra field value for the current object.
 
 updateExtraLanguages ($key, $trigger=null, $userused=null)
 Update an extra language value for the current object.
 
 showInputField ($val, $key, $value, $moreparam='', $keysuffix='', $keyprefix='', $morecss=0, $nonewbutton=0)
 Return HTML string to put an input field into a page Code very similar with showInputField of extra fields.
 
 clearFieldError ($fieldKey)
 clear validation message result for a field
 
 setFieldError ($fieldKey, $msg='')
 set validation error message a field
 
 getFieldError ($fieldKey)
 get field error message
 
 validateField ($fields, $fieldKey, $fieldValue)
 Return validation test result for a field.
 
 showOptionals ($extrafields, $mode='view', $params=null, $keysuffix='', $keyprefix='', $onetrtd=0, $display_type='card')
 Function to show lines of extrafields with output datas.
 
 getJSListDependancies ($type='_extra')
 
 getRights ()
 Returns the rights used for this class.
 
 defineBuyPrice ($unitPrice=0.0, $discountPercent=0.0, $fk_product=0)
 Get buy price to use for margin calculation.
 
 show_photos ($modulepart, $sdir, $size=0, $nbmax=0, $nbbyrow=5, $showfilename=0, $showaction=0, $maxHeight=120, $maxWidth=160, $nolink=0, $overwritetitle=0, $usesharelink=0, $cache='', $addphotorefcss='photoref')
 Show photos of an object (nbmax maximum), into several columns.
 
 isDate ($info)
 Function test if type is date.
 
 isDuration ($info)
 Function test if type is duration.
 
 isInt ($info)
 Function test if type is integer.
 
 isFloat ($info)
 Function test if type is float.
 
 isText ($info)
 Function test if type is text.
 
 setVarsFromFetchObj (&$obj)
 Function to load data from a SQL pointer into properties of current object $this.
 
 getFieldList ($alias='', $excludefields=array())
 Function to concat keys of fields.
 
 createCommon (User $user, $notrigger=false)
 Create object into database.
 
 fetchCommon ($id, $ref=null, $morewhere='')
 Load object in memory from the database.
 
 fetchLinesCommon ($morewhere='')
 Load object in memory from the database.
 
 updateCommon (User $user, $notrigger=false)
 Update object into database.
 
 deleteCommon (User $user, $notrigger=false, $forcechilddeletion=0)
 Delete object in database.
 
 deleteByParentField ($parentId=0, $parentField='', $filter=array(), $filtermode="AND")
 Delete all child object from a parent ID.
 
 deleteLineCommon (User $user, $idline, $notrigger=false)
 Delete a line of object in database.
 
 setStatusCommon ($user, $status, $notrigger=0, $triggercode='')
 Set to a status.
 
 initAsSpecimenCommon ()
 Initialise object with example values Id must be 0 if object instance is a specimen.
 
 fetchComments ()
 Load comments linked with current task.
 
 getNbComments ()
 Return nb comments already posted.
 
 trimParameters ($parameters)
 Trim object parameters.
 
 getCategoriesCommon ($type_categ)
 Sets object to given categories.
 
 setCategoriesCommon ($categories, $type_categ='', $remove_existing=true)
 Sets object to given categories.
 
 cloneCategories ($fromId, $toId, $type='')
 Copy related categories to another object.
 
 deleteEcmFiles ($mode=0)
 Delete related files of object in database.
 

Static Public Member Functions

static isExistingObject ($element, $id, $ref='', $ref_ext='')
 Check an object id/ref exists If you don't need/want to instantiate object and just need to know if object exists, use this method instead of fetch.
 
static getAllItemsLinkedByObjectID ($fk_object_where, $field_select, $field_where, $table_element)
 Function used to get an array with all items linked to an object id in association table.
 
static deleteAllItemsLinkedByObjectID ($fk_object_where, $field_where, $table_element)
 Function used to remove all items linked to an object id in association table.
 
static commonReplaceThirdparty (DoliDB $dbs, $origin_id, $dest_id, array $tables, $ignoreerrors=0)
 Function used to replace a thirdparty id with another one.
 
static commonReplaceProduct (DoliDB $dbs, $origin_id, $dest_id, array $tables, $ignoreerrors=0)
 Function used to replace a product id with another one.
 

Public Attributes

 $fk_projet
 
 $note
 
 $date_modification
 

Protected Member Functions

 commonGenerateDocument ($modelspath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref, $moreparams=null)
 Common function for all objects extending CommonObject for generating documents.
 
 isArray ($info)
 Function test if type is array.
 
 canBeNull ($info)
 Function test if field can be null.
 
 isForcedToNullIfZero ($info)
 Function test if field is forced to null if zero or empty.
 
 isIndex ($info)
 Function test if is indexed.
 
 setSaveQuery ()
 Function to return the array of data key-value from the ->fields and all the ->properties of an object.
 
 quote ($value, $fieldsentry)
 Add quote to field value if necessary.
 

Detailed Description

Parent class of all other business classes (invoices, contracts, proposals, orders, ...)

Definition at line 45 of file commonobject.class.php.

Member Function Documentation

◆ __clone()

CommonObject::__clone ( )

Overwrite magic function to solve problem of cloning object that are kept as references.

Returns
void

Definition at line 5395 of file commonobject.class.php.

◆ add_contact()

CommonObject::add_contact ( $fk_socpeople,
$type_contact,
$source = 'external',
$notrigger = 0 )

Add a link between element $this->element and a contact.

Parameters
int$fk_socpeopleId of thirdparty contact (if source = 'external') or id of user (if souce = 'internal') to link
int | string$type_contactType of contact (code or id). Must be id or code found into table llx_c_type_contact. For example: SALESREPFOLL
string$sourceexternal=Contact extern (llx_socpeople), internal=Contact intern (llx_user)
int$notriggerDisable all triggers
Returns
int <0 if KO, 0 if already added or code not valid, >0 if OK

Definition at line 1024 of file commonobject.class.php.

References call_trigger(), dol_now(), dol_syslog(), and liste_contact().

Referenced by CommandeFournisseur\approve(), copy_linked_contact(), Commande\create(), Contrat\create(), Facture\create(), and Ticket\create().

◆ add_element_resource()

CommonObject::add_element_resource ( $resource_id,
$resource_type,
$busy = 0,
$mandatory = 0 )

Add resources to the current object : add entry into llx_element_resources Need $this->element & $this->id.

Parameters
int$resource_idResource id
string$resource_type'resource'
int$busyBusy or not
int$mandatoryMandatory or not
Returns
int <=0 if KO, >0 if OK

Definition at line 5318 of file commonobject.class.php.

References dol_syslog().

◆ add_object_linked()

CommonObject::add_object_linked ( $origin = null,
$origin_id = null,
$f_user = null,
$notrigger = 0 )

Add an object link into llx_element_element.

Parameters
string$originLinked element type
int$origin_idLinked element id
User$f_userUser that create
int$notrigger1=Does not execute triggers, 0=execute triggers
Returns
int <=0 if KO, >0 if OK
See also
fetchObjectLinked(), updateObjectLinked(), deleteObjectLinked()

Definition at line 3818 of file commonobject.class.php.

References dol_syslog().

Referenced by Asset\create(), Commande\create(), CommandeFournisseur\create(), Contrat\create(), Delivery\create(), Expedition\create(), Facture\create(), FactureFournisseur\create(), FactureFournisseurRec\create(), FactureRec\create(), Fichinter\create(), Propal\create(), Reception\create(), SupplierProposal\create(), and Asset\dispose().

◆ addThumbs()

CommonObject::addThumbs ( $file)

Build thumb.

Parameters
string$filePath file in UTF8 to original file to create thumbs from.
Returns
void

Definition at line 5720 of file commonobject.class.php.

References dol_osencode(), getDefaultImageSizes(), and vignette().

Referenced by Categorie\add_photo(), and Product\add_photo().

◆ call_trigger()

CommonObject::call_trigger ( $triggerName,
$user )

Call trigger based on this instance.

Some context information may also be provided into array property this->context. NB: Error from trigger are stacked in interface->errors NB2: If return code of triggers are < 0, action calling trigger should cancel all transaction.

Parameters
string$triggerNametrigger's name to execute
User$userObject user
Returns
int Result of run_triggers

Reimplemented in EcmDirectory.

Definition at line 5830 of file commonobject.class.php.

References dol_print_error().

Referenced by MouvementStock\_create(), ContratLigne\active_line(), Societe\add_commercial(), add_contact(), Categorie\add_type(), Contrat\addline(), Tva\addPayment(), Paiement\addPaymentToBank(), User\addrights(), UserGroup\addrights(), Task\addTimeSpent(), CommandeFournisseur\approve(), Holiday\approve(), Partnership\approve(), Commande\availability(), Propal\availability(), CommandeFournisseur\Cancel(), Commande\cancel(), Expedition\cancel(), Commande\classifyBilled(), CommandeFournisseur\classifyBilled(), Propal\classifyBilled(), Commande\classifyUnBilled(), ContratLigne\close_line(), Propal\closeProposal(), Commande\cloture(), RecruitmentJobPosition\cloture(), SupplierProposal\cloture(), CommandeFournisseur\commande(), Account\create(), ActionComm\create(), Adherent\create(), AdherentType\create(), BonPrelevement\create(), Categorie\create(), ChargeSociales\create(), Commande\create(), CommandeFournisseur\create(), CommandeFournisseurDispatch\create(), Comment\create(), CompanyBankAccount\create(), Contact\create(), Contrat\create(), Deplacement\create(), Dolresource\create(), Don\create(), EcmFiles\create(), Entrepot\create(), Expedition\create(), ExpeditionLineBatch\create(), ExpenseReport\create(), Facture\create(), FactureFournisseur\create(), FactureFournisseurRec\create(), FactureRec\create(), Fichinter\create(), Holiday\create(), Link\create(), Localtax\create(), Mailing\create(), MultiCurrency\create(), Opensurveysondage\create(), Paiement\create(), PaiementFourn\create(), PaymentDonation\create(), PaymentSalary\create(), PaymentSocialContribution\create(), PaymentVarious\create(), PaymentVAT\create(), Product\create(), ProductAttribute\create(), ProductAttributeValue\create(), Productcustomerprice\create(), Productlot\create(), Project\create(), Propal\create(), Reception\create(), Salary\create(), Societe\create(), Subscription\create(), SupplierProposal\create(), Task\create(), Ticket\create(), Tva\create(), User\create(), User\create_from_contact(), ActionComm\createFromClone(), Societe\del_commercial(), Categorie\del_type(), ActionComm\delete(), Adherent\delete(), AdherentType\delete(), BonPrelevement\delete(), Categorie\delete(), Commande\delete(), CommandeFournisseur\delete(), CommandeFournisseurDispatch\delete(), CommandeFournisseurLigne\delete(), Comment\delete(), CompanyBankAccount\delete(), Contact\delete(), Contrat\delete(), Delivery\delete(), Dolresource\delete(), Don\delete(), EcmFiles\delete(), Entrepot\delete(), Expedition\delete(), ExpeditionLigne\delete(), ExpenseReport\delete(), Facture\delete(), FactureFournisseur\delete(), FactureFournisseurLigneRec\delete(), FactureFournisseurRec\delete(), FactureLigne\delete(), FactureLigneRec\delete(), FactureRec\delete(), Fichinter\delete(), Holiday\delete(), Link\delete(), Localtax\delete(), Mailing\delete(), Opensurveysondage\delete(), OrderLine\delete(), Paiement\delete(), PaiementFourn\delete(), PaymentDonation\delete(), PaymentVarious\delete(), Product\delete(), ProductAttribute\delete(), ProductAttributeValue\delete(), Productcustomerprice\delete(), Project\delete(), Propal\delete(), PropaleLigne\delete(), Reception\delete(), Societe\delete(), Subscription\delete(), SupplierInvoiceLine\delete(), SupplierProposal\delete(), SupplierProposalLine\delete(), Task\delete(), Tva\delete(), User\delete(), delete_contact(), Contrat\deleteline(), ExpenseReport\deleteline(), FichinterLigne\deleteline(), AdherentType\delMultiLangs(), Product\delMultiLangs(), User\delrights(), UserGroup\delrights(), Task\delTimeSpent(), Commande\demand_reason(), Propal\demand_reason(), CommandeFournisseur\dispatchProduct(), Adherent\exclude(), CommandeFournisseurLigne\insert(), ContratLigne\insert(), ExpeditionLigne\insert(), ExpenseReportLine\insert(), FactureLigne\insert(), FichinterLigne\insert(), OrderLine\insert(), PropaleLigne\insert(), SupplierInvoiceLine\insert(), SupplierProposalLine\insert(), CommandeFournisseur\Livraison(), CommandeFournisseur\refuse(), ProductFournisseur\remove_product_fournisseur_price(), User\RemoveFromGroup(), Expedition\reOpen(), Reception\reOpen(), Contrat\reopen(), Propal\reopen(), SupplierProposal\reopen(), Adherent\resiliate(), Propal\set_availability(), ExpenseReport\set_cancel(), Commande\set_date(), Propal\set_date(), Propal\set_demand_reason(), Propal\set_echeance(), CommandeFournisseur\set_id_projet(), Commande\set_ref_client(), Facture\set_ref_client(), Propal\set_ref_client(), Commande\set_remise_absolue(), Facture\set_remise_absolue(), Propal\set_remise_absolue(), Propal\set_remise_percent(), Commande\set_reopen(), Product\setAccountancyCode(), ExpenseReport\setApproved(), FactureRec\setAutoValidate(), Expedition\setBilled(), Reception\setBilled(), Facture\setCanceled(), FactureFournisseur\setCanceled(), Project\setClose(), Expedition\setClosed(), Reception\setClosed(), Commande\setDeliveryDate(), CommandeFournisseur\setDeliveryDate(), Propal\setDeliveryDate(), ExpenseReport\setDeny(), Commande\setDiscount(), Facture\setDiscount(), Commande\setDraft(), Facture\setDraft(), FactureFournisseur\setDraft(), Fichinter\setDraft(), Propal\setDraft(), Reception\setDraft(), SupplierProposal\setDraft(), Facture\setFinal(), FactureRec\setFrequencyAndUnit(), FactureRec\setGeneratePdf(), User\SetInGroup(), FactureRec\setMaxPeriod(), FactureRec\setModelPdf(), AdherentType\setMultiLangs(), Categorie\setMultiLangs(), Product\setMultiLangs(), FactureRec\setNextDate(), ExpenseReport\setPaid(), Facture\setPaid(), FactureFournisseur\setPaid(), Adherent\setPassword(), User\setPassword(), Fichinter\setRefClient(), CommandeFournisseur\setStatus(), Contact\setstatus(), User\setstatus(), ExpenseReport\setUnpaid(), Facture\setUnpaid(), FactureFournisseur\setUnpaid(), Fichinter\setValid(), Project\setValid(), ExpenseReport\setValidate(), Account\update(), ActionComm\update(), Adherent\update(), AdherentType\update(), Categorie\update(), ChargeSociales\update(), Commande\update(), CommandeFournisseur\update(), CommandeFournisseurDispatch\update(), CommandeFournisseurLigne\update(), Comment\update(), CompanyBankAccount\update(), Contact\update(), Contrat\update(), ContratLigne\update(), Dolresource\update(), Don\update(), EcmFiles\update(), Entrepot\update(), Expedition\update(), ExpeditionLigne\update(), ExpenseReport\update(), Facture\update(), FactureFournisseur\update(), FactureFournisseurLigneRec\update(), FactureFournisseurRec\update(), FactureLigne\update(), FactureLigneRec\update(), FactureRec\update(), Fichinter\update(), FichinterLigne\update(), Holiday\update(), Link\update(), Localtax\update(), Mailing\update(), Opensurveysondage\update(), OrderLine\update(), PaymentDonation\update(), PaymentVarious\update(), Product\update(), ProductAttribute\update(), ProductAttributeValue\update(), Productcustomerprice\update(), Productlot\update(), Project\update(), Propal\update(), PropaleLigne\update(), Reception\update(), Salary\update(), Societe\update(), Subscription\update(), SupplierInvoiceLine\update(), SupplierProposalLine\update(), Task\update(), Tva\update(), User\update(), ProductFournisseur\update_buyprice(), Dolresource\update_element_resource(), Contact\update_perso(), AssetAccountancyCodes\updateAccountancyCodes(), AssetDepreciationOptions\updateDeprecationOptions(), Contrat\updateline(), ExpenseReport\updateline(), Product\updatePrice(), Task\updateTimeSpent(), CashControl\valid(), Commande\valid(), CommandeFournisseur\valid(), Delivery\valid(), Expedition\valid(), Propal\valid(), Reception\valid(), SupplierProposal\valid(), Don\valid_promesse(), Adherent\validate(), AssetModel\validate(), Availabilities\validate(), BOM\validate(), Booking\validate(), ConferenceOrBooth\validate(), ConferenceOrBoothAttendee\validate(), Contrat\validate(), Evaluation\validate(), Evaluationline\validate(), Facture\validate(), FactureFournisseur\validate(), Holiday\validate(), Job\validate(), KnowledgeRecord\validate(), Mo\validate(), MyObject\validate(), Partnership\validate(), Position\validate(), ProductFournisseurPrice\validate(), RecruitmentCandidature\validate(), RecruitmentJobPosition\validate(), Skill\validate(), Skilldet\validate(), SkillRank\validate(), StockTransfer\validate(), StockTransferLine\validate(), Target\validate(), and TimeSpent\validate().

◆ canBeNull()

CommonObject::canBeNull ( $info)
protected

Function test if field can be null.

Parameters
array$infocontent informations of field
Returns
bool true if it can be null

Definition at line 9024 of file commonobject.class.php.

◆ clearFieldError()

CommonObject::clearFieldError ( $fieldKey)

clear validation message result for a field

Parameters
string$fieldKeyKey of attribute to clear
Returns
void

Definition at line 7910 of file commonobject.class.php.

◆ clearObjectLinkedCache()

CommonObject::clearObjectLinkedCache ( )

Clear the cache saying that all linked object were already loaded.

So next fetchObjectLinked will reload all links.

Returns
int <0 if KO, >0 if OK
See also
fetchObjectLinked()

Definition at line 4137 of file commonobject.class.php.

◆ cloneCategories()

CommonObject::cloneCategories ( $fromId,
$toId,
$type = '' )

Copy related categories to another object.

Parameters
int$fromIdId object source
int$toIdId object cible
string$typeType of category ('product', ...)
Returns
int < 0 if error, > 0 if ok

Definition at line 10181 of file commonobject.class.php.

◆ commonGenerateDocument()

CommonObject::commonGenerateDocument ( $modelspath,
$modele,
$outputlangs,
$hidedetails,
$hidedesc,
$hideref,
$moreparams = null )
protected

Common function for all objects extending CommonObject for generating documents.

Parameters
string$modelspathRelative folder where generators are placed
string$modeleGenerator to use. Caller must set it to obj->model_pdf or GETPOST('model_pdf','alpha') for example.
Translate$outputlangsOutput language to use
int$hidedetails1 to hide details. 0 by default
int$hidedesc1 to hide product description. 0 by default
int$hideref1 to hide product reference. 0 by default
null | array$moreparamsArray to provide more information
Returns
int >0 if OK, <0 if KO
See also
addFileIntoDatabaseIndex()

Definition at line 5421 of file commonobject.class.php.

References dol_buildpath(), dol_delete_preview(), dol_dir_list(), dol_is_file(), dol_meta_create(), and dol_syslog().

Referenced by Adherent\generateDocument(), BOM\generateDocument(), Commande\generateDocument(), CommandeFournisseur\generateDocument(), ConferenceOrBooth\generateDocument(), Contrat\generateDocument(), Delivery\generateDocument(), Entrepot\generateDocument(), Expedition\generateDocument(), ExpenseReport\generateDocument(), Facture\generateDocument(), FactureFournisseur\generateDocument(), Fichinter\generateDocument(), Mo\generateDocument(), MouvementStock\generateDocument(), MyObject\generateDocument(), PaiementFourn\generateDocument(), Product\generateDocument(), Productlot\generateDocument(), Project\generateDocument(), Propal\generateDocument(), Reception\generateDocument(), Societe\generateDocument(), SupplierProposal\generateDocument(), Task\generateDocument(), and UserGroup\generateDocument().

◆ commonReplaceProduct()

static CommonObject::commonReplaceProduct ( DoliDB $dbs,
$origin_id,
$dest_id,
array $tables,
$ignoreerrors = 0 )
static

Function used to replace a product id with another one.

This function is meant to be called from replaceProduct with the appropriate tables Column name fk_product MUST be used to identify products

Parameters
DoliDB$dbsDatabase handler
int$origin_idOld product id (the product to delete)
int$dest_idNew product id (the product that will received element of the other)
string[]$tablesTables that need to be changed
int$ignoreerrorsIgnore errors. Return true even if errors. We need this when replacement can fails like for categories (categorie of old product may already exists on new one)
Returns
bool True if success, False if error

Definition at line 8593 of file commonobject.class.php.

References Database\query().

Referenced by BOM\replaceProduct(), Commande\replaceProduct(), CommandeFournisseur\replaceProduct(), Contrat\replaceProduct(), Delivery\replaceProduct(), Facture\replaceProduct(), FactureFournisseur\replaceProduct(), FactureRec\replaceProduct(), FichinterRec\replaceProduct(), ProductFournisseur\replaceProduct(), Propal\replaceProduct(), Reception\replaceProduct(), and SupplierProposal\replaceProduct().

◆ commonReplaceThirdparty()

static CommonObject::commonReplaceThirdparty ( DoliDB $dbs,
$origin_id,
$dest_id,
array $tables,
$ignoreerrors = 0 )
static

Function used to replace a thirdparty id with another one.

This function is meant to be called from replaceThirdparty with the appropriate tables Column name fk_soc MUST be used to identify thirdparties

Parameters
DoliDB$dbsDatabase handler
int$origin_idOld thirdparty id (the thirdparty to delete)
int$dest_idNew thirdparty id (the thirdparty that will received element of the other)
string[]$tablesTables that need to be changed
int$ignoreerrorsIgnore errors. Return true even if errors. We need this when replacement can fails like for categories (categorie of old thirdparty may already exists on new one)
Returns
bool True if success, False if error

Definition at line 8564 of file commonobject.class.php.

References Database\query().

Referenced by ActionComm\replaceThirdparty(), Adherent\replaceThirdparty(), Bookmark\replaceThirdparty(), Categorie\replaceThirdparty(), Commande\replaceThirdparty(), CommandeFournisseur\replaceThirdparty(), ConferenceOrBoothAttendee\replaceThirdparty(), Contact\replaceThirdparty(), Contrat\replaceThirdparty(), Delivery\replaceThirdparty(), Don\replaceThirdparty(), Expedition\replaceThirdparty(), Facture\replaceThirdparty(), FactureFournisseur\replaceThirdparty(), FactureFournisseurRec\replaceThirdparty(), FactureRec\replaceThirdparty(), Fichinter\replaceThirdparty(), FichinterRec\replaceThirdparty(), Fournisseur\replaceThirdparty(), LignePrelevement\replaceThirdparty(), Mo\replaceThirdparty(), Product\replaceThirdparty(), ProductFournisseur\replaceThirdparty(), Project\replaceThirdparty(), Propal\replaceThirdparty(), Reception\replaceThirdparty(), Societe\replaceThirdparty(), SupplierProposal\replaceThirdparty(), Ticket\replaceThirdparty(), and User\replaceThirdparty().

◆ copy_linked_contact()

◆ createCommon()

◆ defineBuyPrice()

CommonObject::defineBuyPrice ( $unitPrice = 0.0,
$discountPercent = 0.0,
$fk_product = 0 )

Get buy price to use for margin calculation.

This function is called when buy price is unknown. Set buy price = sell price if ForceBuyingPriceIfNull configured, elseif calculation MARGIN_TYPE = 'costprice' and costprice is defined, use costprice as buyprice elseif calculation MARGIN_TYPE = 'pmp' and pmp is calculated, use pmp as buyprice else set min buy price as buy price

Parameters
float$unitPriceProduct unit price
float$discountPercentLine discount percent
int$fk_productProduct id
Returns
float <0 if KO, buyprice if OK

Definition at line 8622 of file commonobject.class.php.

Referenced by Contrat\addline(), FactureLigne\insert(), OrderLine\insert(), PropaleLigne\insert(), SupplierProposalLine\insert(), ContratLigne\update(), FactureLigne\update(), OrderLine\update(), PropaleLigne\update(), SupplierProposalLine\update(), and Contrat\updateline().

◆ delete_contact()

CommonObject::delete_contact ( $rowid,
$notrigger = 0 )

Delete a link to contact line.

Parameters
int$rowidId of contact link line to delete
int$notriggerDisable all triggers
Returns
int >0 if OK, <0 if KO

Definition at line 1184 of file commonobject.class.php.

References call_trigger(), and dol_syslog().

◆ delete_linked_contact()

CommonObject::delete_linked_contact ( $source = '',
$code = '' )

Delete all links between an object $this and all its contacts in llx_element_contact.

Parameters
string$source'' or 'internal' or 'external'
string$codeType of contact (code or id)
Returns
int <0 if KO, 0=Nothing done, >0 if OK

Definition at line 1234 of file commonobject.class.php.

References dol_syslog(), and liste_type_contact().

Referenced by Commande\delete(), Contrat\delete(), ExpenseReport\delete(), Facture\delete(), Fichinter\delete(), Project\delete(), Propal\delete(), and Task\delete().

◆ delete_resource()

CommonObject::delete_resource ( $rowid,
$element,
$notrigger = 0 )

Delete a link to resource line.

Parameters
int$rowidId of resource line to delete
int$elementelement name (for trigger) TODO: use $this->element into commonobject class
int$notriggerDisable all triggers
Returns
int >0 if OK, <0 if KO

Definition at line 5359 of file commonobject.class.php.

References dol_syslog().

◆ deleteAllItemsLinkedByObjectID()

static CommonObject::deleteAllItemsLinkedByObjectID ( $fk_object_where,
$field_where,
$table_element )
static

Function used to remove all items linked to an object id in association table.

Parameters
int$fk_object_whereid of object we need to remove linked items
string$field_wherename of field of object we need to delete linked items
string$table_elementname of association table
Returns
int <0 if KO, 0 if nothing done, >0 if OK and something done

Definition at line 4336 of file commonobject.class.php.

◆ deleteByParentField()

CommonObject::deleteByParentField ( $parentId = 0,
$parentField = '',
$filter = array(),
$filtermode = "AND" )

Delete all child object from a parent ID.

Parameters
int$parentIdParent Id
string$parentFieldName of Foreign key parent column
array$filteran array filter
string$filtermodeAND or OR
Returns
int <0 if KO, >0 if OK
Exceptions
Exception

Definition at line 9790 of file commonobject.class.php.

◆ deleteCommon()

CommonObject::deleteCommon ( User $user,
$notrigger = false,
$forcechilddeletion = 0 )

◆ deleteEcmFiles()

CommonObject::deleteEcmFiles ( $mode = 0)

Delete related files of object in database.

Parameters
integer$mode0=Use path to find record, 1=Use src_object_xxx fields (Mode 1 is recommanded for new objects)
Returns
bool True if OK, False if KO

Definition at line 10212 of file commonobject.class.php.

References ref.

Referenced by Commande\delete(), CommandeFournisseur\delete(), Expedition\delete(), ExpenseReport\delete(), Facture\delete(), FactureFournisseur\delete(), Fichinter\delete(), Product\delete(), Propal\delete(), and SupplierProposal\delete().

◆ deleteExtraFields()

◆ deleteLineCommon()

◆ deleteObjectLinked()

CommonObject::deleteObjectLinked ( $sourceid = null,
$sourcetype = '',
$targetid = null,
$targettype = '',
$rowid = '',
$f_user = null,
$notrigger = 0 )

Delete all links between an object $this.

Parameters
int$sourceidObject source id
string$sourcetypeObject source type
int$targetidObject target id
string$targettypeObject target type
int$rowidRow id of line to delete. If defined, other parameters are not used.
User$f_userUser that create
int$notrigger1=Does not execute triggers, 0= execute triggers
Returns
int >0 if OK, <0 if KO
See also
add_object_linked(), updateObjectLinked(), fetchObjectLinked()

Definition at line 4228 of file commonobject.class.php.

References dol_syslog().

Referenced by Expedition\cancel(), Commande\delete(), CommandeFournisseur\delete(), Contrat\delete(), Delivery\delete(), Expedition\delete(), ExpenseReport\delete(), Facture\delete(), FactureFournisseur\delete(), FactureFournisseurRec\delete(), FactureRec\delete(), Fichinter\delete(), Propal\delete(), Reception\delete(), SupplierInvoiceLine\delete(), SupplierProposal\delete(), and Asset\reopen().

◆ delThumbs()

CommonObject::delThumbs ( $file)

Delete thumbs.

Parameters
string$filePath file in UTF8 to original file to delete thumbs.
Returns
void

Definition at line 5752 of file commonobject.class.php.

References dol_delete_file(), and getImageFileNameForSize().

◆ errorsToString()

◆ fetch_barcode()

CommonObject::fetch_barcode ( )

Load data for barcode into properties ->barcode_type* Properties ->barcode_type that is id of barcode.

Type is used to find other properties, but if it is not defined, ->element must be defined to know default barcode type.

Returns
int <0 if KO, 0 if can't guess type of barcode (ISBN, EAN13...), >0 if OK (all barcode properties loaded)

Definition at line 1728 of file commonobject.class.php.

References dol_print_error(), and dol_syslog().

◆ fetch_contact()

CommonObject::fetch_contact ( $contactid = null)

Load object contact with id=$this->contact_id into $this->contact.

Parameters
int$contactidId du contact. Use this->contact_id if empty.
Returns
int <0 if KO, >0 if OK

Definition at line 1633 of file commonobject.class.php.

◆ fetch_optionals()

CommonObject::fetch_optionals ( $rowid = null,
$optionsArray = null )

Function to get extra fields of an object into $this->array_options This method is in most cases called by method fetch of objects but you can call it separately.

Parameters
int$rowidId of line. Use the id of object if not defined. Deprecated. Function must be called without parameters.
array$optionsArrayArray resulting of call of extrafields->fetch_name_optionals_label(). Deprecated. Function must be called without parameters.
Returns
int <0 if error, 0 if no values of extrafield to find nor found, 1 if an attribute is found and value loaded
See also
fetchValuesForExtraLanguages()

Definition at line 6046 of file commonobject.class.php.

References dol_eval(), dol_syslog(), and rowid.

Referenced by ActionComm\createFromClone(), Facture\createFromCurrent(), Account\fetch(), AccountLine\fetch(), ActionComm\fetch(), Adherent\fetch(), AdherentType\fetch(), Categorie\fetch(), Commande\fetch(), CommandeFournisseur\fetch(), CommandeFournisseurDispatch\fetch(), CommandeFournisseurLigne\fetch(), Contact\fetch(), Contrat\fetch(), ContratLigne\fetch(), Delivery\fetch(), Dolresource\fetch(), Don\fetch(), EcmDirectory\fetch(), EcmFiles\fetch(), Entrepot\fetch(), Expedition\fetch(), Facture\fetch(), FactureFournisseur\fetch(), FactureFournisseurRec\fetch(), FactureLigne\fetch(), FactureRec\fetch(), Fichinter\fetch(), FichinterLigne\fetch(), Holiday\fetch(), MouvementStock\fetch(), OrderLine\fetch(), Partnership\fetch(), Product\fetch(), Productlot\fetch(), ProductStockEntrepot\fetch(), Project\fetch(), Propal\fetch(), PropaleLigne\fetch(), Reception\fetch(), Salary\fetch(), Societe\fetch(), SupplierInvoiceLine\fetch(), SupplierProposal\fetch(), Task\fetch(), Ticket\fetch(), and User\fetch().

◆ fetch_origin()

CommonObject::fetch_origin ( )

◆ fetch_product()

CommonObject::fetch_product ( )

Load the product with id $this->fk_product into this->product.

Returns
int <0 if KO, >=0 if OK

Definition at line 1813 of file commonobject.class.php.

Referenced by BOM\validate(), and Mo\validate().

◆ fetch_project()

CommonObject::fetch_project ( )

Load the project with id $this->fk_project into this->project.

Returns
int <0 if KO, >=0 if OK

Definition at line 1775 of file commonobject.class.php.

Referenced by Commande\getTooltipContentArray(), Contrat\getTooltipContentArray(), and Propal\getTooltipContentArray().

◆ fetch_projet()

CommonObject::fetch_projet ( )

Load the project with id $this->fk_project into this->project.

Returns
int <0 if KO, >=0 if OK

Reimplemented in ConferenceOrBoothAttendee.

Definition at line 1787 of file commonobject.class.php.

◆ fetch_thirdparty()

◆ fetch_user()

CommonObject::fetch_user ( $userid)

Load the user with id $userid into this->user.

Parameters
int$useridId du contact
Returns
int <0 if KO, >0 if OK

Definition at line 1836 of file commonobject.class.php.

References user.

◆ fetchComments()

CommonObject::fetchComments ( )

Load comments linked with current task.

Returns
boolean 1 if ok

Definition at line 10028 of file commonobject.class.php.

◆ fetchCommon()

◆ fetchLinesCommon()

◆ fetchNoCompute()

CommonObject::fetchNoCompute ( $id)

Function to make a fetch but set environment to avoid to load computed values before.

Parameters
int$idID of object
Returns
int >0 if OK, 0 if not found, <0 if KO

Definition at line 6022 of file commonobject.class.php.

◆ fetchObjectFrom()

CommonObject::fetchObjectFrom ( $table,
$field,
$key,
$element = null )

Load object from specific field.

Parameters
string$tableTable element or element line
string$fieldField selected
string$keyImport key
string$elementElement name
Returns
int <0 if KO, >0 if OK

Definition at line 1880 of file commonobject.class.php.

References dol_syslog().

◆ fetchObjectLinked()

CommonObject::fetchObjectLinked ( $sourceid = null,
$sourcetype = '',
$targetid = null,
$targettype = '',
$clause = 'OR',
$alsosametype = 1,
$orderby = 'sourcetype',
$loadalsoobjects = 1 )

Fetch array of objects linked to current object (object of enabled modules only).

Links are loaded into this->linkedObjectsIds array + this->linkedObjects array if $loadalsoobjects = 1 or $loadalsoobjects = type Possible usage for parameters:

  • all parameters empty -> we look all link to current object (current object can be source or target)
  • source id+type -> will get list of targets linked to source
  • target id+type -> will get list of sources linked to target
  • source id+type + target type -> will get list of targets of the type linked to source
  • target id+type + source type -> will get list of sources of the type linked to target
Parameters
int$sourceidObject source id (if not defined, $this->id)
string$sourcetypeObject source type (if not defined, $this->element)
int$targetidObject target id (if not defined, $this->id)
string$targettypeObject target type (if not defined, $this->element)
string$clause'OR' or 'AND' clause used when both source id and target id are provided
int$alsosametype0=Return only links to object that differs from source type. 1=Include also link to objects of same type.
string$orderbySQL 'ORDER BY' clause
int | string$loadalsoobjectsLoad also array this->linkedObjects. Use 0 to increase performances, Use 1 to load all, Use value of type ('facture', 'facturerec', ...) to load only a type of object.
Returns
int <0 if KO, >0 if OK
See also
add_object_linked(), updateObjectLinked(), deleteObjectLinked()

Definition at line 3916 of file commonobject.class.php.

References dol_include_once(), dol_print_error(), and dol_syslog().

Referenced by Expedition\cancel(), Facture\createFromCurrent(), CommandeFournisseur\delete(), Expedition\delete(), Delivery\getRemainingDelivered(), and Propal\InvoiceArrayList().

◆ fetchOneLike()

CommonObject::fetchOneLike ( $ref)

Looks for an object with ref matching the wildcard provided It does only work when $this->table_ref_field is set.

Parameters
string$refWildcard
Returns
int >1 = OK, 0 = Not found or table_ref_field not defined, <0 = KO

Definition at line 1701 of file commonobject.class.php.

◆ fetchValuesForExtraLanguages()

CommonObject::fetchValuesForExtraLanguages ( )

Function to get alternative languages of a data into $this->array_languages This method is NOT called by method fetch of objects but must be called separately.

Returns
int <0 if error, 0 if no values of alternative languages to find nor found, 1 if a value was found and loaded
See also
fetch_optionnals()

Definition at line 5868 of file commonobject.class.php.

References dol_print_error().

◆ formAddObjectLine()

CommonObject::formAddObjectLine ( $dateSelector,
$seller,
$buyer,
$defaulttpldir = '/core/tpl' )

Show add free and predefined products/services form.

Parameters
int$dateSelector1=Show also date range input fields
Societe$sellerObject thirdparty who sell
Societe$buyerObject thirdparty who buy
string$defaulttpldirDirectory where to find the template
Returns
void

Reimplemented in ProductAttribute.

Definition at line 4855 of file commonobject.class.php.

References dol_buildpath().

◆ getAllItemsLinkedByObjectID()

static CommonObject::getAllItemsLinkedByObjectID ( $fk_object_where,
$field_select,
$field_where,
$table_element )
static

Function used to get an array with all items linked to an object id in association table.

Parameters
int$fk_object_whereid of object we need to get linked items
string$field_selectname of field we need to get a list
string$field_wherename of field of object we need to get linked items
string$table_elementname of association table
Returns
array|int Array of record, -1 if empty

Definition at line 4307 of file commonobject.class.php.

◆ getCanvas()

CommonObject::getCanvas ( $id = 0,
$ref = '' )

Load type of canvas of an object if it exists.

Parameters
int$idRecord id
string$refRecord ref
Returns
int <0 if KO, 0 if nothing done, >0 if OK

Definition at line 4491 of file commonobject.class.php.

References dol_print_error().

◆ getCategoriesCommon()

CommonObject::getCategoriesCommon ( $type_categ)

Sets object to given categories.

Deletes object from existing categories not supplied. Adds it to non existing supplied categories. Existing categories are left untouch.

Parameters
string$type_categCategory type ('customer', 'supplier', 'website_page', ...)
Returns
int Array of category objects or < 0 if KO

Definition at line 10083 of file commonobject.class.php.

◆ getChildrenOfLine()

CommonObject::getChildrenOfLine ( $id,
$includealltree = 0 )

Get children of line.

Parameters
int$idId of parent line
int$includealltree0 = 1st level child, 1 = All level child
Returns
array Array with list of children lines id

Definition at line 3109 of file commonobject.class.php.

References dol_syslog().

◆ getDefaultCreateValueFor()

CommonObject::getDefaultCreateValueFor ( $fieldname,
$alternatevalue = null,
$type = 'alphanohtml' )

Return the default value to use for a field when showing the create form of object.

Return values in this order: 1) If parameter is available into POST, we return it first. 2) If not but an alternate value was provided as parameter of function, we return it. 3) If not but a constant $conf->global->OBJECTELEMENT_FIELDNAME is set, we return it (It is better to use the dedicated table). 4) Return value found into database (TODO No yet implemented)

Parameters
string$fieldnameName of field
string$alternatevalueAlternate value to use
string$typeType of data
Returns
string|string[] Default value (can be an array if the GETPOST return an array)

Definition at line 5778 of file commonobject.class.php.

References dol_syslog(), and GETPOST().

◆ getFieldError()

CommonObject::getFieldError ( $fieldKey)

get field error message

Parameters
string$fieldKeyKey of attribute
Returns
string Error message of validation ('' if no error)

Definition at line 7939 of file commonobject.class.php.

◆ getFieldList()

◆ getFormatedCustomerRef()

CommonObject::getFormatedCustomerRef ( $objref)

Return customer ref for screen output.

Parameters
string$objrefCustomer ref
Returns
string Customer ref formated

Definition at line 859 of file commonobject.class.php.

◆ getFormatedSupplierRef()

CommonObject::getFormatedSupplierRef ( $objref)

Return supplier ref for screen output.

Parameters
string$objrefSupplier ref
Returns
string Supplier ref formated

Definition at line 878 of file commonobject.class.php.

◆ getFullAddress()

CommonObject::getFullAddress ( $withcountry = 0,
$sep = "\n",
$withregion = 0,
$extralangcode = '' )

Return full address of contact.

Parameters
int$withcountry1=Add country into address string
string$sepSeparator to use to build string
int$withregion1=Add region into address string
string$extralangcodeUser extralanguages as value
Returns
string Full address string

Definition at line 900 of file commonobject.class.php.

References dol_format_address(), getCountry(), and getState().

◆ getIdContact()

CommonObject::getIdContact ( $source,
$code,
$status = 0 )

Return id of contacts for a source and a contact code.

Example: contact client de facturation ('external', 'BILLING') Example: contact client de livraison ('external', 'SHIPPING') Example: contact interne suivi paiement ('internal', 'SALESREPFOLL')

Parameters
string$source'external' or 'internal'
string$code'BILLING', 'SHIPPING', 'SALESREPFOLL', ...
int$statuslimited to a certain status
Returns
array List of id for such contacts

Definition at line 1565 of file commonobject.class.php.

References dol_syslog().

Referenced by Contrat\getIdBillingContact(), Facture\getIdBillingContact(), Contrat\getIdServiceContact(), and Facture\getIdShippingContact().

◆ getIdOfLine()

CommonObject::getIdOfLine ( $rang)

Get rowid of the line relative to its position.

Parameters
int$rangRang value
Returns
int Rowid of the line

Definition at line 3320 of file commonobject.class.php.

◆ getJSListDependancies()

CommonObject::getJSListDependancies ( $type = '_extra')
Parameters
string$typeType for prefix
Returns
string Javacript code to manage dependency

Definition at line 8457 of file commonobject.class.php.

◆ getLastMainDocLink()

CommonObject::getLastMainDocLink ( $modulepart,
$initsharekey = 0,
$relativelink = 0 )

Return the link of last main doc file for direct public download.

Parameters
string$modulepartModule related to document
int$initsharekeyInit the share key if it was not yet defined
int$relativelink0=Return full external link, 1=Return link relative to root of file
Returns
string Link or empty string if there is no download link

Definition at line 930 of file commonobject.class.php.

References getRandomPassword().

◆ getListContactId()

CommonObject::getListContactId ( $source = 'external')

Return list of id of contacts of object.

Parameters
string$sourceSource of contact: external (llx_socpeople) or internal (llx_user) or thirdparty (llx_societe)
Returns
array Array of id of contacts (if source=external or internal) Array of id of third parties with at least one contact on object (if source=thirdparty)

Reimplemented in Task.

Definition at line 2263 of file commonobject.class.php.

◆ getNbComments()

CommonObject::getNbComments ( )

Return nb comments already posted.

Returns
int

Definition at line 10048 of file commonobject.class.php.

◆ getRangOfLine()

CommonObject::getRangOfLine ( $rowid)

Get position of line (rang)

Parameters
int$rowidId of line
Returns
int Value of rang in table of lines

Definition at line 3294 of file commonobject.class.php.

References dol_syslog().

◆ getRights()

CommonObject::getRights ( )

Returns the rights used for this class.

Returns
stdClass Object of permission for the module

Reimplemented in CommandeFournisseur, FactureFournisseur, and Product.

Definition at line 8533 of file commonobject.class.php.

◆ getSpecialCode()

CommonObject::getSpecialCode ( $lineid)

Get special code of a line.

Parameters
int$lineidId of line
Returns
int Special code

Definition at line 4537 of file commonobject.class.php.

◆ getTooltipContent()

CommonObject::getTooltipContent ( $params)

getTooltipContent

Parameters
array$paramsparams
Since
v18
Returns
string

Definition at line 773 of file commonobject.class.php.

References dol_eval(), getDolGlobalInt(), and getTooltipContentArray().

◆ getTooltipContentArray()

CommonObject::getTooltipContentArray ( $params)

Return array of datas to show into a tooltip.

This method must be implemented in each object class.

Since
v18
Parameters
array$paramsparams to construct tooltip data
Returns
array

Reimplemented in Account, ActionComm, Adherent, AdherentType, BOM, Categorie, Commande, CommandeFournisseur, Contact, Contrat, ContratLigne, Cronjob, Delivery, Dolresource, Entrepot, Expedition, ExpenseReport, Facture, FactureFournisseur, Fichinter, Fiscalyear, Holiday, KnowledgeRecord, Mailing, Mo, MyObject, Opensurveysondage, Partnership, PaymentSalary, Product, Productlot, Project, Propal, Salary, Societe, SocieteAccount, SupplierProposal, Task, Ticket, TimeSpent, User, UserGroup, and Workstation.

Definition at line 761 of file commonobject.class.php.

Referenced by getTooltipContent().

◆ getTotalDiscount()

CommonObject::getTotalDiscount ( )

Function that returns the total amount HT of discounts applied for all lines.

Returns
float|string Total amout of discount

Definition at line 4677 of file commonobject.class.php.

References dol_syslog(), and price2num().

◆ getTotalWeightVolume()

CommonObject::getTotalWeightVolume ( )

Return into unit=0, the calculated total of weight and volume of all lines * qty Calculate by adding weight and volume of each product line, so properties ->volume/volume_units/weight/weight_units must be loaded on line.

Returns
array array('weight'=>...,'volume'=>...)

Definition at line 4719 of file commonobject.class.php.

◆ getValueFrom()

CommonObject::getValueFrom ( $table,
$id,
$field )

Getter generic.

Load value from a specific field

Parameters
string$tableTable of element or element line
int$idElement id
string$fieldField selected
Returns
int <0 if KO, >0 if OK

Definition at line 1915 of file commonobject.class.php.

References dol_syslog().

◆ hasProductsOrServices()

CommonObject::hasProductsOrServices ( $predefined = -1)

Function to say how many lines object contains.

Parameters
int$predefined-1=All, 0=Count free product/service only, 1=Count predefined product/service only, 2=Count predefined product, 3=Count predefined service
Returns
int <0 if KO, 0 if no predefined products, nb of lines with predefined products if found

Definition at line 4643 of file commonobject.class.php.

References dol_syslog().

◆ indexFile()

CommonObject::indexFile ( $destfull,
$update_main_doc_field )

Index a file into the ECM database.

Parameters
string$destfullFull path of file to index
int$update_main_doc_fieldUpdate field main_doc fied into the table of object. This param is set when called for a document generation if document generator hase ->update_main_doc_field set and returns ->result['fullpath'].
Returns
int <0 if KO, >0 if OK

Definition at line 5605 of file commonobject.class.php.

References dol_osencode(), dol_print_error(), getRandomPassword(), and setEventMessages().

◆ initAsSpecimenCommon()

◆ insertExtraFields()

CommonObject::insertExtraFields ( $trigger = '',
$userused = null )

Add/Update all extra fields values for the current object.

Data to describe values to insert/update are stored into $this->array_options=array('options_codeforfield1'=>'valueforfield1', 'options_codeforfield2'=>'valueforfield2', ...) This function delete record with all extrafields and insert them again from the array $this->array_options.

Parameters
string$triggerIf defined, call also the trigger (for example COMPANY_MODIFY)
User$userusedObject user
Returns
int -1=error, O=did nothing, 1=OK
See also
insertExtraLanguages(), updateExtraField(), deleteExtraField(), setValueFrom()

Definition at line 6197 of file commonobject.class.php.

References dol_eval(), dol_hash(), dol_include_once(), dol_syslog(), and price2num().

Referenced by Account\create(), ActionComm\create(), Categorie\create(), Commande\create(), CommandeFournisseur\create(), CommandeFournisseurDispatch\create(), Contrat\create(), Dolresource\create(), Don\create(), Entrepot\create(), Expedition\create(), ExpenseReport\create(), Facture\create(), FactureFournisseur\create(), FactureFournisseurRec\create(), FactureRec\create(), Fichinter\create(), Holiday\create(), Productlot\create(), Project\create(), Propal\create(), Reception\create(), Salary\create(), SupplierProposal\create(), Task\create(), Ticket\create(), AccountLine\insert(), CommandeFournisseurLigne\insert(), ContratLigne\insert(), ExpeditionLigne\insert(), FactureLigne\insert(), FichinterLigne\insert(), OrderLine\insert(), PropaleLigne\insert(), SupplierInvoiceLine\insert(), SupplierProposalLine\insert(), Account\update(), ActionComm\update(), Adherent\update(), AdherentType\update(), Categorie\update(), Commande\update(), CommandeFournisseur\update(), CommandeFournisseurDispatch\update(), CommandeFournisseurLigne\update(), Contact\update(), Contrat\update(), ContratLigne\update(), Dolresource\update(), Don\update(), Entrepot\update(), ExpeditionLigne\update(), Facture\update(), FactureFournisseur\update(), FactureFournisseurLigneRec\update(), FactureFournisseurRec\update(), FactureLigne\update(), FactureLigneRec\update(), FactureRec\update(), Fichinter\update(), FichinterLigne\update(), Holiday\update(), OrderLine\update(), Product\update(), Productlot\update(), Project\update(), Propal\update(), PropaleLigne\update(), Salary\update(), Societe\update(), SupplierInvoiceLine\update(), SupplierProposalLine\update(), Task\update(), and User\update().

◆ insertExtraLanguages()

CommonObject::insertExtraLanguages ( $trigger = '',
$userused = null )

Add/Update all extra fields values for the current object.

Data to describe values to insert/update are stored into $this->array_options=array('options_codeforfield1'=>'valueforfield1', 'options_codeforfield2'=>'valueforfield2', ...) This function delete record with all extrafields and insert them again from the array $this->array_options.

Parameters
string$triggerIf defined, call also the trigger (for example COMPANY_MODIFY)
User$userusedObject user
Returns
int -1=error, O=did nothing, 1=OK
See also
insertExtraFields(), updateExtraField(), setValueFrom()

Definition at line 6480 of file commonobject.class.php.

References dol_syslog(), and price2num().

Referenced by Societe\update().

◆ isArray()

CommonObject::isArray ( $info)
protected

Function test if type is array.

Parameters
array$infocontent informations of field
Returns
bool true if array

Definition at line 8918 of file commonobject.class.php.

◆ isDate()

CommonObject::isDate ( $info)

Function test if type is date.

Parameters
array$infocontent informations of field
Returns
bool true if date

Definition at line 8936 of file commonobject.class.php.

◆ isDuration()

CommonObject::isDuration ( $info)

Function test if type is duration.

Parameters
array$infocontent informations of field
Returns
bool true if field of type duration

Definition at line 8950 of file commonobject.class.php.

◆ isExistingObject()

static CommonObject::isExistingObject ( $element,
$id,
$ref = '',
$ref_ext = '' )
static

Check an object id/ref exists If you don't need/want to instantiate object and just need to know if object exists, use this method instead of fetch.

Parameters
string$elementString of element ('product', 'facture', ...)
int$idId of object
string$refRef of object to check
string$ref_extRef ext of object to check
Returns
int <0 if KO, 0 if OK but not found, >0 if OK and exists

Definition at line 702 of file commonobject.class.php.

References dol_print_error(), and dol_syslog().

Referenced by Commande\create(), Fichinter\create(), Propal\create(), SupplierProposal\create(), FactureLigne\insert(), and SupplierInvoiceLine\insert().

◆ isFloat()

CommonObject::isFloat ( $info)

Function test if type is float.

Parameters
array$infocontent informations of field
Returns
bool true if float

Definition at line 8988 of file commonobject.class.php.

◆ isForcedToNullIfZero()

CommonObject::isForcedToNullIfZero ( $info)
protected

Function test if field is forced to null if zero or empty.

Parameters
array$infocontent informations of field
Returns
bool true if forced to null

Definition at line 9042 of file commonobject.class.php.

◆ isIndex()

CommonObject::isIndex ( $info)
protected

Function test if is indexed.

Parameters
array$infocontent informations of field
Returns
bool

Definition at line 9060 of file commonobject.class.php.

◆ isInt()

CommonObject::isInt ( $info)

Function test if type is integer.

Parameters
array$infocontent informations of field
Returns
bool true if integer

Definition at line 8969 of file commonobject.class.php.

◆ isObjectUsed()

CommonObject::isObjectUsed ( $id = 0,
$entity = 0 )

Function to check if an object is used by others (by children).

Check is done into this->childtables. There is no check into llx_element_element.

Parameters
int$idForce id of object
int$entityForce entity to check
Returns
int <0 if KO, 0 if not used, >0 if already used

Definition at line 4558 of file commonobject.class.php.

References dol_print_error().

Referenced by Product\delete(), Societe\delete(), and Task\delete().

◆ isText()

CommonObject::isText ( $info)

Function test if type is text.

Parameters
array$infocontent informations of field
Returns
bool true if type text

Definition at line 9006 of file commonobject.class.php.

◆ line_ajaxorder()

CommonObject::line_ajaxorder ( $rows)

Update position of line with ajax (rang)

Parameters
array$rowsArray of rows
Returns
void

Definition at line 3218 of file commonobject.class.php.

◆ line_down()

CommonObject::line_down ( $rowid,
$fk_parent_line = true )

Update a line to have a higher rank.

Parameters
int$rowidId of line
boolean$fk_parent_lineTable with fk_parent_line field or not
Returns
void

Definition at line 3166 of file commonobject.class.php.

◆ line_max()

CommonObject::line_max ( $fk_parent_line = 0)

◆ line_order()

CommonObject::line_order ( $renum = false,
$rowidorder = 'ASC',
$fk_parent_line = true )

Save a new position (field rang) for details lines.

You can choose to set position for lines with already a position or lines without any position defined.

Parameters
boolean$renumTrue to renum all already ordered lines, false to renum only not already ordered lines.
string$rowidorderASC or DESC
boolean$fk_parent_lineTable with fk_parent_line field or not
Returns
int <0 if KO, >0 if OK

Definition at line 3024 of file commonobject.class.php.

References dol_print_error(), and dol_syslog().

Referenced by Commande\addline(), CommandeFournisseur\addline(), Facture\addline(), FactureFournisseur\addline(), Propal\addline(), SupplierProposal\addline(), StockTransfer\deleteLine(), Commande\updateline(), Facture\updateline(), Propal\updateline(), and SupplierProposal\updateline().

◆ line_up()

CommonObject::line_up ( $rowid,
$fk_parent_line = true )

Update a line to have a lower rank.

Parameters
int$rowidId of line
boolean$fk_parent_lineTable with fk_parent_line field or not
Returns
void

Definition at line 3146 of file commonobject.class.php.

◆ liste_contact()

CommonObject::liste_contact ( $statusoflink = -1,
$source = 'external',
$list = 0,
$code = '',
$status = -1,
$arrayoftcids = array() )

Get array of all contacts for an object.

Parameters
int$statusoflinkStatus of links to get (-1=all). Not used.
string$sourceSource of contact: 'external' or 'thirdparty' (llx_socpeople) or 'internal' (llx_user)
int$list0:Returned array contains all properties, 1:Return array contains just id
string$codeFilter on this code of contact type ('SHIPPING', 'BILLING', ...)
int$statusStatus of user or company
array$arrayoftcidsArray with ID of type of contacts. If we provide this, we can make a ec.fk_c_type_contact in ($arrayoftcids) to avoid link on tc table. TODO Not implemented.
Returns
array|int Array of contacts, -1 if error

Definition at line 1279 of file commonobject.class.php.

References dol_print_error(), and dol_syslog().

Referenced by add_contact(), Task\getListContactId(), and Project\restrictedProjectArea().

◆ liste_type_contact()

CommonObject::liste_type_contact ( $source = 'internal',
$order = 'position',
$option = 0,
$activeonly = 0,
$code = '' )

Return array with list of possible values for type of contacts.

Parameters
string$source'internal', 'external' or 'all'
string$orderSort order by : 'position', 'code', 'rowid'...
int$option0=Return array id->label, 1=Return array code->label
int$activeonly0=all status of contact, 1=only the active
string$codeType of contact (Example: 'CUSTOMER', 'SERVICE')
Returns
array Array list of type of contacts (id->label if option=0, code->label if option=1)

Definition at line 1414 of file commonobject.class.php.

Referenced by delete_linked_contact().

◆ listeTypeContacts()

CommonObject::listeTypeContacts ( $source = 'internal',
$option = 0,
$activeonly = 0,
$code = '',
$element = '',
$excludeelement = '' )

Return array with list of possible values for type of contacts.

Parameters
string$source'internal', 'external' or 'all'
int$option0=Return array id->label, 1=Return array code->label
int$activeonly0=all status of contact, 1=only the active
string$codeType of contact (Example: 'CUSTOMER', 'SERVICE')
string$elementFilter on 1 element type
string$excludeelementExclude 1 element type. Example: 'agenda'
Returns
array Array list of type of contacts (id->label if option=0, code->label if option=1)

Definition at line 1477 of file commonobject.class.php.

References dol_syslog().

◆ load_previous_next_ref()

CommonObject::load_previous_next_ref ( $filter,
$fieldid,
$nodbprefix = 0 )

Load properties id_previous and id_next by comparing $fieldid with $this->ref.

Parameters
string$filterOptional SQL filter. Example: "(t.field1 = 'aa' OR t.field2 = 'bb')". Do not allow user input data here. Use SQL and not Universal Search Filter. @TODO Replace this with an USF string after changing all ->next_prev_filter
string$fieldidName of field to use for the select MAX and MIN
int$nodbprefixDo not include DB prefix to forge table name
Returns
int <0 if KO, >0 if OK

Definition at line 2080 of file commonobject.class.php.

References dol_print_error().

◆ printObjectLine()

CommonObject::printObjectLine ( $action,
$line,
$var,
$num,
$i,
$dateSelector,
$seller,
$buyer,
$selected = 0,
$extrafields = null,
$defaulttpldir = '/core/tpl' )

Return HTML content of a detail line TODO Move this into an output class file (htmlline.class.php)

Parameters
string$actionGET/POST action
CommonObjectLine$lineSelected object line to output
string$varNot used
int$numNumber of line (0)
int$iI
int$dateSelector1=Show also date range input fields
Societe$sellerObject of seller third party
Societe$buyerObject of buyer third party
int$selectedID line selected
Extrafields$extrafieldsObject of extrafields
string$defaulttpldirDirectory where to find the template (deprecated)
Returns
void

Reimplemented in ProductAttribute.

Definition at line 4999 of file commonobject.class.php.

References dol_buildpath(), dol_htmlentitiesbr(), dol_print_error(), getDolGlobalInt(), GETPOST(), price2num(), and statut.

◆ printObjectLines()

CommonObject::printObjectLines ( $action,
$seller,
$buyer,
$selected = 0,
$dateSelector = 0,
$defaulttpldir = '/core/tpl' )

Return HTML table for object lines TODO Move this into an output class file (htmlline.class.php) If lines are into a template, title must also be into a template But for the moment we don't know if it's possible as we keep a method available on overloaded objects.

Parameters
string$actionAction code
Societe$sellerObject of seller third party
Societe$buyerObject of buyer third party
int$selectedID line selected
int$dateSelector1=Show also date range input fields
string$defaulttpldirDirectory where to find the template
Returns
void

Definition at line 4908 of file commonobject.class.php.

References dol_buildpath().

◆ printOriginLine()

CommonObject::printOriginLine ( $line,
$var,
$restrictlist = '',
$defaulttpldir = '/core/tpl',
$selectedLines = array() )

Return HTML with a line of table array of source object lines TODO Move this and previous function into output html class file (htmlline.class.php).

If lines are into a template, title must also be into a template But for the moment we don't know if it's possible as we keep a method available on overloaded objects.

Parameters
CommonObjectLine$lineLine
string$varVar
string$restrictlist''=All lines, 'services'=Restrict to services only (strike line if not)
string$defaulttpldirDirectory where to find the template
array$selectedLinesArray of lines id for selected lines
Returns
void

Reimplemented in Mo.

Definition at line 5176 of file commonobject.class.php.

References dol_buildpath(), dol_trunc(), get_date_range(), getDolGlobalInt(), img_object(), img_picto(), price(), Product\TYPE_SERVICE, and vatrate().

◆ printOriginLinesList()

CommonObject::printOriginLinesList ( $restrictlist = '',
$selectedLines = array() )

Return HTML table table of source object lines TODO Move this and previous function into output html class file (htmlline.class.php).

If lines are into a template, title must also be into a template But for the moment we don't know if it's possible, so we keep the method available on overloaded objects.

Parameters
string$restrictlist''=All lines, 'services'=Restrict to services only
array$selectedLinesArray of lines id for selected lines
Returns
void

Reimplemented in Mo.

Definition at line 5123 of file commonobject.class.php.

References getDolGlobalInt().

◆ quote()

CommonObject::quote ( $value,
$fieldsentry )
protected

Add quote to field value if necessary.

Parameters
string | int$valueValue to protect
array$fieldsentryProperties of field
Returns
string

Definition at line 9236 of file commonobject.class.php.

References price2num().

◆ setBankAccount()

CommonObject::setBankAccount ( $fk_account,
$notrigger = false,
$userused = null )

Change the bank account.

Parameters
int$fk_accountId of bank account
bool$notriggerfalse=launch triggers after, true=disable triggers
User$userusedObject user
Returns
int 1 if OK, 0 if KO

Definition at line 2960 of file commonobject.class.php.

References dol_syslog().

◆ setCategoriesCommon()

CommonObject::setCategoriesCommon ( $categories,
$type_categ = '',
$remove_existing = true )

Sets object to given categories.

Adds it to non existing supplied categories. Deletes object from existing categories not supplied (if remove_existing==true). Existing categories are left untouch.

Parameters
int[] | int$categoriesCategory ID or array of Categories IDs
string$type_categCategory type ('customer', 'supplier', 'website_page', ...) definied into const class Categorie type
boolean$remove_existingTrue: Remove existings categories from Object if not supplies by $categories, False: let them
Returns
int <0 if KO, >0 if OK

Definition at line 10106 of file commonobject.class.php.

References dol_syslog().

Referenced by WebsitePage\setCategories().

◆ setDeliveryAddress()

CommonObject::setDeliveryAddress ( $id)

Define delivery address.

Deprecated
Parameters
int$idAddress id
Returns
int <0 si ko, >0 si ok

Definition at line 2805 of file commonobject.class.php.

References dol_syslog().

◆ setDocModel()

CommonObject::setDocModel ( $user,
$modelpdf )

Set last model used by doc generator.

Parameters
User$userUser object that make change
string$modelpdfModele name
Returns
int <0 if KO, >0 if OK

Definition at line 2926 of file commonobject.class.php.

References dol_print_error(), dol_syslog(), and dol_trunc().

◆ setErrorsFromObject()

◆ setExtraParameters()

CommonObject::setExtraParameters ( )

Set extra parameters.

Returns
int <0 if KO, >0 if OK

Definition at line 4817 of file commonobject.class.php.

References dol_syslog().

◆ setFieldError()

CommonObject::setFieldError ( $fieldKey,
$msg = '' )

set validation error message a field

Parameters
string$fieldKeyKey of attribute
string$msgthe field error message
Returns
void

Definition at line 7923 of file commonobject.class.php.

◆ setMulticurrencyCode()

CommonObject::setMulticurrencyCode ( $code)

Change the multicurrency code.

Parameters
string$codemulticurrency code
Returns
int >0 if OK, <0 if KO

Definition at line 2425 of file commonobject.class.php.

References dol_syslog(), MultiCurrency\getIdAndTxFromCode(), and statut.

◆ setPaymentMethods()

CommonObject::setPaymentMethods ( $id)

Change the payments methods.

Parameters
int$idId of new payment method
Returns
int >0 if OK, <0 if KO

Definition at line 2359 of file commonobject.class.php.

References dol_syslog(), and statut.

Referenced by CommonInvoice\demande_prelevement().

◆ setPaymentTerms()

CommonObject::setPaymentTerms ( $id,
$deposit_percent = null )

Change the payments terms.

Parameters
int$idId of new payment terms
string$deposit_percent% of deposit if needed by payment terms
Returns
int >0 if OK, <0 if KO

Definition at line 2677 of file commonobject.class.php.

References dol_syslog(), getDictionaryValue(), and statut.

◆ setProject()

CommonObject::setProject ( $projectid,
$notrigger = 0 )

Link element with a project.

Parameters
int$projectidProject id to link element to
int$notriggerDisable the trigger
Returns
int <0 if KO, >0 if OK

Definition at line 2288 of file commonobject.class.php.

References dol_print_error(), and dol_syslog().

◆ setRetainedWarrantyPaymentTerms()

CommonObject::setRetainedWarrantyPaymentTerms ( $id)

Change the retained warranty payments terms.

Parameters
int$idId of new payment terms
Returns
int >0 if OK, <0 if KO

Definition at line 2773 of file commonobject.class.php.

References dol_syslog(), and statut.

◆ setSaveQuery()

CommonObject::setSaveQuery ( )
protected

Function to return the array of data key-value from the ->fields and all the ->properties of an object.

Note: $this->${field} are set by the page that make the createCommon() or the updateCommon(). $this->${field} should be a clean and string value (so date are formated for SQL insert).

Returns
array Array with all values of each properties to update

Definition at line 9081 of file commonobject.class.php.

◆ setShippingMethod()

CommonObject::setShippingMethod ( $shipping_method_id,
$notrigger = false,
$userused = null )

Change the shipping method.

Parameters
int$shipping_method_idId of shipping method
bool$notriggerfalse=launch triggers after, true=disable triggers
User$userusedObject user
Returns
int 1 if OK, 0 if KO

Definition at line 2835 of file commonobject.class.php.

References dol_syslog().

◆ setStatusCommon()

CommonObject::setStatusCommon ( $user,
$status,
$notrigger = 0,
$triggercode = '' )

Set to a status.

Parameters
User$userObject user that modify
int$statusNew status to set (often a constant like self\STATUS_XXX)
int$notrigger1=Does not execute triggers, 0=Execute triggers
string$triggercodeTrigger code to use
Returns
int <0 if KO, >0 if OK

Definition at line 9929 of file commonobject.class.php.

Referenced by AssetModel\cancel(), Availabilities\cancel(), BOM\cancel(), Booking\cancel(), ConferenceOrBooth\cancel(), ConferenceOrBoothAttendee\cancel(), Evaluation\cancel(), Evaluationline\cancel(), Job\cancel(), KnowledgeRecord\cancel(), Mo\cancel(), MyObject\cancel(), Partnership\cancel(), Position\cancel(), ProductFournisseurPrice\cancel(), RecruitmentCandidature\cancel(), RecruitmentJobPosition\cancel(), Skill\cancel(), Skilldet\cancel(), SkillRank\cancel(), StockTransfer\cancel(), StockTransferLine\cancel(), Target\cancel(), TimeSpent\cancel(), Asset\dispose(), Asset\reopen(), AssetModel\reopen(), Availabilities\reopen(), BOM\reopen(), Booking\reopen(), ConferenceOrBooth\reopen(), ConferenceOrBoothAttendee\reopen(), Don\reopen(), Evaluation\reopen(), Evaluationline\reopen(), Job\reopen(), KnowledgeRecord\reopen(), Mo\reopen(), MyObject\reopen(), Partnership\reopen(), Position\reopen(), ProductFournisseurPrice\reopen(), RecruitmentCandidature\reopen(), RecruitmentJobPosition\reopen(), Skill\reopen(), Skilldet\reopen(), SkillRank\reopen(), StockTransfer\reopen(), StockTransferLine\reopen(), Target\reopen(), TimeSpent\reopen(), Workstation\setDisabled(), AssetModel\setDraft(), Availabilities\setDraft(), BOM\setDraft(), Booking\setDraft(), ConferenceOrBooth\setDraft(), ConferenceOrBoothAttendee\setDraft(), Evaluation\setDraft(), Evaluationline\setDraft(), Expedition\setDraft(), Job\setDraft(), KnowledgeRecord\setDraft(), Mo\setDraft(), MyObject\setDraft(), Partnership\setDraft(), Position\setDraft(), ProductFournisseurPrice\setDraft(), RecruitmentCandidature\setDraft(), RecruitmentJobPosition\setDraft(), Skill\setDraft(), Skilldet\setDraft(), SkillRank\setDraft(), StockTransfer\setDraft(), StockTransferLine\setDraft(), Target\setDraft(), TimeSpent\setDraft(), and Workstation\setEnabled().

◆ setStatut()

CommonObject::setStatut ( $status,
$elementId = null,
$elementType = '',
$trigkey = '',
$fieldstatus = 'fk_statut' )

Set status of an object.

Parameters
int$statusStatus to set
int$elementIdId of element to force (use this->id by default if null)
string$elementTypeType of element to force (use this->table_element by default)
string$trigkeyTrigger key to use for trigger. Use '' means automatic but it is not recommended and is deprecated.
string$fieldstatusName of status field in this->table_element
Returns
int <0 if KO, >0 if OK

Definition at line 4364 of file commonobject.class.php.

References dol_now(), dol_syslog(), and statut.

Referenced by Delivery\create(), Inventory\setCanceled(), Inventory\setDraft(), Inventory\setRecorded(), Expedition\valid(), Reception\valid(), and Inventory\validate().

◆ setTransportMode()

CommonObject::setTransportMode ( $id)

Change the transport mode methods.

Parameters
int$idId of transport mode
Returns
int >0 if OK, <0 if KO

Definition at line 2732 of file commonobject.class.php.

References dol_syslog(), and statut.

◆ setValueFrom()

CommonObject::setValueFrom ( $field,
$value,
$table = '',
$id = null,
$format = '',
$id_field = '',
$fuser = null,
$trigkey = '',
$fk_user_field = 'fk_user_modif' )

Setter generic.

Update a specific field into database. Warning: Trigger is run only if param trigkey is provided.

Parameters
string$fieldField to update
mixed$valueNew value
string$tableTo force other table element or element line (should not be used)
int$idTo force other object id (should not be used)
string$formatData format ('text', 'int', 'date'). 'text' is used if not defined
string$id_fieldTo force rowid field name. 'rowid' is used if not defined
User | string$fuserUpdate the user of last update field with this user. If not provided, current user is used except if value is 'none'
string$trigkeyTrigger key to run (in most cases something like 'XXX_MODIFY')
string$fk_user_fieldName of field to save user id making change
Returns
int <0 if KO, >0 if OK
See also
updateExtraField()

Definition at line 1948 of file commonobject.class.php.

References dol_syslog().

Referenced by Societe\setThirdpartyType().

◆ setValuesForExtraLanguages()

CommonObject::setValuesForExtraLanguages ( $onlykey = '')

Fill array_options property of object by extrafields value (using for data sent by forms)

Parameters
string$onlykeyOnly the following key is filled. When we make update of only one language field ($action = 'update_languages'), calling page must set this to avoid to have other languages being reset.
Returns
int 1 if array_options set, 0 if no value, -1 if error (field required missing for example)

Definition at line 5937 of file commonobject.class.php.

References dol_eval(), dol_mktime(), GETPOST(), and price2num().

◆ setVarsFromFetchObj()

CommonObject::setVarsFromFetchObj ( & $obj)

Function to load data from a SQL pointer into properties of current object $this.

Parameters
stdClass$objContain data of object from database
Returns
void

Definition at line 9149 of file commonobject.class.php.

References ref.

◆ setWarehouse()

CommonObject::setWarehouse ( $warehouse_id)

Change the warehouse.

Parameters
int$warehouse_idId of warehouse
Returns
int 1 if OK, 0 if KO

Definition at line 2893 of file commonobject.class.php.

References dol_syslog().

◆ show_photos()

CommonObject::show_photos ( $modulepart,
$sdir,
$size = 0,
$nbmax = 0,
$nbbyrow = 5,
$showfilename = 0,
$showaction = 0,
$maxHeight = 120,
$maxWidth = 160,
$nolink = 0,
$overwritetitle = 0,
$usesharelink = 0,
$cache = '',
$addphotorefcss = 'photoref' )

Show photos of an object (nbmax maximum), into several columns.

Parameters
string$modulepart'product', 'ticket', ...
string$sdirDirectory to scan (full absolute path)
int$size0=original size, 1='small' use thumbnail if possible
int$nbmaxNombre maximum de photos (0=pas de max)
int$nbbyrowNumber of image per line or -1 to use div separator or 0 to use no separator. Used only if size=1 or 'small'.
int$showfilename1=Show filename
int$showaction1=Show icon with action links (resize, delete)
int$maxHeightMax height of original image when size='small' (so we can use original even if small requested). If 0, always use 'small' thumb image.
int$maxWidthMax width of original image when size='small'
int$nolinkDo not add a href link to view enlarged imaged into a new tab
int | string$overwritetitleDo not add title tag on image
int$usesharelinkUse the public shared link of image (if not available, the 'nophoto' image will be shown instead)
string$cacheA string if we want to use a cached version of image
string$addphotorefcssAdd CSS to img of photos
Returns
string Html code to show photo. Number of photos shown is saved in this->nbphoto

Definition at line 8695 of file commonobject.class.php.

References completeFileArrayWithDatabaseInfo(), dol_dir_list(), dol_escape_htmltag(), dol_getImageSize(), dol_is_file(), dol_sort_array(), get_exdir(), getAdvancedPreviewUrl(), getDolGlobalInt(), getImageFileNameForSize(), image_format_supported(), img_delete(), and img_picto().

Referenced by Product\getKanbanView(), ProductFournisseur\getNomUrl(), and Product\getTooltipContentArray().

◆ showInputField()

CommonObject::showInputField ( $val,
$key,
$value,
$moreparam = '',
$keysuffix = '',
$keyprefix = '',
$morecss = 0,
$nonewbutton = 0 )

Return HTML string to put an input field into a page Code very similar with showInputField of extra fields.

Parameters
array | null$valArray of properties for field to show (used only if ->fields not defined)
string$keyKey of attribute
string | array$valuePreselected value to show (for date type it must be in timestamp format, for amount or price it must be a php numeric value, for array type must be array)
string$moreparamTo add more parameters on html input tag
string$keysuffixPrefix string to add into name and id of field (can be used to avoid duplicate names)
string$keyprefixSuffix string to add into name and id of field (can be used to avoid duplicate names)
string | int$morecssValue for css to define style/length of field. May also be a numeric.
int$nonewbuttonForce to not show the new button on field that are links to object
Returns
string

Reimplemented in Position.

Definition at line 6847 of file commonobject.class.php.

References ajax_combobox(), dol_escape_htmltag(), dol_syslog(), dol_trunc(), and price().

◆ showOptionals()

CommonObject::showOptionals ( $extrafields,
$mode = 'view',
$params = null,
$keysuffix = '',
$keyprefix = '',
$onetrtd = 0,
$display_type = 'card' )

Function to show lines of extrafields with output datas.

This function is responsible to output the

and

according to correct number of columns received into $params['colspan'] or

according to $display_type
Parameters
Extrafields$extrafieldsExtrafield Object
string$modeShow output ('view') or input ('create' or 'edit') for extrafield
array$paramsOptional parameters. Example: array('style'=>'class="oddeven"', 'colspan'=>$colspan)
string$keysuffixSuffix string to add after name and id of field (can be used to avoid duplicate names)
string$keyprefixPrefix string to add before name and id of field (can be used to avoid duplicate names)
string$onetrtdAll fields in same tr td. Used by objectline_create.tpl.php for example.
string$display_type"card" for form display, "line" for document line display (extrafields on propal line, order line, etc...)
Returns
string String with html content to show

Definition at line 8147 of file commonobject.class.php.

References dol_eval(), dol_mktime(), dol_syslog(), GETPOST(), and price2num().

◆ swapContactStatus()

CommonObject::swapContactStatus ( $rowid)

Update status of a contact linked to object.

Parameters
int$rowidId of link between object and contact
Returns
int <0 if KO, >=0 if OK

Definition at line 1379 of file commonobject.class.php.

References dol_print_error(), dol_syslog(), and update_contact().

◆ trimParameters()

CommonObject::trimParameters ( $parameters)

Trim object parameters.

Parameters
string[]$parametersarray of parameters to trim
Returns
void

Definition at line 10059 of file commonobject.class.php.

◆ update_contact()

CommonObject::update_contact ( $rowid,
$statut,
$type_contact_id = 0,
$fk_socpeople = 0 )

Update a link to contact line.

Parameters
int$rowidId of line contact-element
int$statutNew status of link
int$type_contact_idId of contact type (not modified if 0)
int$fk_socpeopleId of soc_people to update (not modified if 0)
Returns
int <0 if KO, >= 0 if OK

Definition at line 1154 of file commonobject.class.php.

Referenced by swapContactStatus().

◆ update_note()

CommonObject::update_note ( $note,
$suffix = '',
$notrigger = 0 )

Update note of element.

Parameters
string$noteNew value for note
string$suffix'', '_public' or '_private'
int$notrigger1=Does not execute triggers, 0=execute triggers
Returns
int <0 if KO, >0 if OK

Definition at line 3424 of file commonobject.class.php.

References dol_syslog().

◆ update_note_public()

CommonObject::update_note_public ( $note)

Update public note (kept for backward compatibility)

Parameters
string$noteNew value for note
Returns
int <0 if KO, >0 if OK
Deprecated
See also
update_note()

Definition at line 3512 of file commonobject.class.php.

◆ update_price()

CommonObject::update_price ( $exclspec = 0,
$roundingadjust = 'none',
$nodatabaseupdate = 0,
$seller = null )

Update total_ht, total_ttc, total_vat, total_localtax1, total_localtax2 for an object (sum of lines).

Must be called at end of methods addline or updateline.

Parameters
int$exclspec>0 = Exclude special product (product_type=9)
string$roundingadjust'none'=Do nothing, 'auto'=Use default method (MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND if defined, or '0'), '0'=Force mode Total of rounding, '1'=Force mode Rounding of total
int$nodatabaseupdate1=Do not update database total fields of the main object. Update only properties in memory. Can be used to save SQL when this method is called several times, so we can do it only once at end.
Societe$sellerIf roundingadjust is '0' or '1' or maybe 'auto', it means we recalculate total for lines before calculating total for object and for this, we need seller object (used to analyze lines to check corrupted data).
Returns
int <0 if KO, >0 if OK

Definition at line 3529 of file commonobject.class.php.

References calcul_price_total(), dol_print_error(), dol_syslog(), getDolGlobalInt(), getDolGlobalString(), price2num(), and type.

Referenced by Commande\addline(), CommandeFournisseur\addline(), ExpenseReport\addline(), Facture\addline(), FactureFournisseur\addline(), FactureFournisseurRec\addline(), FactureRec\addline(), Propal\addline(), SupplierProposal\addline(), Commande\create(), ExpenseReport\create(), Facture\create(), FactureFournisseur\create(), Propal\create(), SupplierProposal\create(), Commande\deleteline(), CommandeFournisseur\deleteline(), Delivery\deleteline(), ExpenseReport\deleteline(), Facture\deleteline(), FactureFournisseur\deleteline(), Propal\deleteline(), SupplierProposal\deleteline(), Commande\insert_discount(), Facture\insert_discount(), FactureFournisseur\insert_discount(), Propal\insert_discount(), SupplierProposal\insert_discount(), Commande\set_remise_absolue(), Facture\set_remise_absolue(), Propal\set_remise_absolue(), SupplierProposal\set_remise_absolue(), Propal\set_remise_percent(), SupplierProposal\set_remise_percent(), Commande\setDiscount(), Facture\setDiscount(), Facture\update_percent(), CommandeFournisseur\updateFromCommandeClient(), Commande\updateline(), CommandeFournisseur\updateline(), Facture\updateline(), FactureFournisseur\updateline(), FactureFournisseurRec\updateline(), FactureRec\updateline(), Propal\updateline(), SupplierProposal\updateline(), and Facture\validate().

◆ update_ref_ext()

CommonObject::update_ref_ext ( $ref_ext)

Update external ref of element.

Parameters
string$ref_extUpdate field ref_ext
Returns
int <0 if KO, >0 if OK

Definition at line 3393 of file commonobject.class.php.

References dol_syslog().

◆ updateCommon()

◆ updateExtraField()

CommonObject::updateExtraField ( $key,
$trigger = null,
$userused = null )

Update 1 extra field value for the current object.

Keep other fields unchanged. Data to describe values to update are stored into $this->array_options=array('options_codeforfield1'=>'valueforfield1', 'options_codeforfield2'=>'valueforfield2', ...)

Parameters
string$keyKey of the extrafield to update (without starting 'options_')
string$triggerIf defined, call also the trigger (for example COMPANY_MODIFY)
User$userusedObject user
Returns
int -1=error, O=did nothing, 1=OK
See also
updateExtraLanguages(), insertExtraFields(), deleteExtraFields(), setValueFrom()

Definition at line 6598 of file commonobject.class.php.

References dol_eval(), dol_syslog(), and price2num().

◆ updateExtraLanguages()

CommonObject::updateExtraLanguages ( $key,
$trigger = null,
$userused = null )

Update an extra language value for the current object.

Data to describe values to update are stored into $this->array_options=array('options_codeforfield1'=>'valueforfield1', 'options_codeforfield2'=>'valueforfield2', ...)

Parameters
string$keyKey of the extrafield (without starting 'options_')
string$triggerIf defined, call also the trigger (for example COMPANY_MODIFY)
User$userusedObject user
Returns
int -1=error, O=did nothing, 1=OK
See also
updateExtraFields(), insertExtraLanguages()

Definition at line 6815 of file commonobject.class.php.

◆ updateLineDown()

CommonObject::updateLineDown ( $rowid,
$rang,
$max )

Update position of line down (rang)

Parameters
int$rowidId of line
int$rangPosition
int$maxMax
Returns
void

Definition at line 3265 of file commonobject.class.php.

References dol_print_error().

◆ updateLineUp()

CommonObject::updateLineUp ( $rowid,
$rang )

Update position of line up (rang)

Parameters
int$rowidId of line
int$rangPosition
Returns
void

Definition at line 3234 of file commonobject.class.php.

References dol_print_error().

◆ updateObjectLinked()

CommonObject::updateObjectLinked ( $sourceid = null,
$sourcetype = '',
$targetid = null,
$targettype = '',
$f_user = null,
$notrigger = 0 )

Update object linked of a current object.

Parameters
int$sourceidObject source id
string$sourcetypeObject source type
int$targetidObject target id
string$targettypeObject target type
User$f_userUser that create
int$notrigger1=Does not execute triggers, 0= execute triggers
Returns
int >0 if OK, <0 if KO
See also
add_object_linked(), fetObjectLinked(), deleteObjectLinked()

Definition at line 4158 of file commonobject.class.php.

References dol_syslog().

◆ updateRangOfLine()

CommonObject::updateRangOfLine ( $rowid,
$rang )

Update position of line (rang)

Parameters
int$rowidId of line
int$rangPosition
Returns
int <0 if KO, >0 if OK

Definition at line 3188 of file commonobject.class.php.

References dol_print_error(), and dol_syslog().

Referenced by Commande\addline(), CommandeFournisseur\addline(), Facture\addline(), FactureFournisseur\addline(), Propal\addline(), SupplierProposal\addline(), Facture\insert_discount(), and FactureFournisseur\insert_discount().

◆ validateField()

CommonObject::validateField ( $fields,
$fieldKey,
$fieldValue )

Return validation test result for a field.

Parameters
array$fieldsArray of properties of field to show
string$fieldKeyKey of attribute
string$fieldValuevalue of attribute
Returns
bool return false if fail true on success, see $this->error for error message

Definition at line 7955 of file commonobject.class.php.

Referenced by AssetDepreciationOptions\setDeprecationOptionsFromPost().

Member Data Documentation

◆ $date_modification

CommonObject::$date_modification
Deprecated
Use date_modification

Definition at line 565 of file commonobject.class.php.

Referenced by Account\fetch().

◆ $fk_projet

CommonObject::$fk_projet
Deprecated
See also
$fk_project

Definition at line 221 of file commonobject.class.php.

Referenced by ConferenceOrBoothAttendee\fetch_projet().

◆ $note


The documentation for this class was generated from the following file: