dolibarr
x.y.z
|
Class to manage products or services. More...
Public Member Functions | |
__construct ($db) | |
Constructor. More... | |
check () | |
Check that ref and label are ok. More... | |
create ($user, $notrigger=0) | |
Insert product into database. More... | |
verify () | |
Check properties of product are ok (like name, barcode, ...). More... | |
check_barcode ($valuetotest, $typefortest) | |
Check barcode. More... | |
update ($id, $user, $notrigger=false, $action='update', $updatetype=false) | |
Update a record into database. More... | |
delete (User $user, $notrigger=0) | |
Delete a product from database (if not used) More... | |
setMultiLangs ($user) | |
Update or add a translation for a product. More... | |
delMultiLangs ($langtodelete, $user) | |
Delete a language for this product. More... | |
setAccountancyCode ($type, $value) | |
Sets an accountancy code for a product. More... | |
getMultiLangs () | |
Load array this->multilangs. More... | |
log_price_delete ($user, $rowid) | |
Delete a price line. More... | |
getSellPrice ($thirdparty_seller, $thirdparty_buyer, $pqp=0) | |
Return price of sell of a product for a seller/buyer/product. More... | |
get_buyprice ($prodfournprice, $qty, $product_id=0, $fourn_ref='', $fk_soc=0) | |
Read price used by a provider. More... | |
updatePrice ($newprice, $newpricebase, $user, $newvat='', $newminprice=0, $level=0, $newnpr=0, $newpbq=0, $ignore_autogen=0, $localtaxes_array=array(), $newdefaultvatcode='') | |
Modify customer price of a product/Service for a given level. More... | |
setPriceExpression ($expression_id) | |
Sets the supplier price expression. More... | |
fetch ($id='', $ref='', $ref_ext='', $barcode='', $ignore_expression=0, $ignore_price_load=0, $ignore_lang_load=0) | |
Load a product in memory from database. More... | |
load_stats_mo ($socid=0) | |
Charge tableau des stats OF pour le produit/service. More... | |
load_stats_bom ($socid=0) | |
Charge tableau des stats OF pour le produit/service. More... | |
load_stats_propale ($socid=0) | |
Charge tableau des stats propale pour le produit/service. More... | |
load_stats_proposal_supplier ($socid=0) | |
Charge tableau des stats propale pour le produit/service. More... | |
load_stats_commande ($socid=0, $filtrestatut='', $forVirtualStock=0) | |
Charge tableau des stats commande client pour le produit/service. More... | |
load_stats_commande_fournisseur ($socid=0, $filtrestatut='', $forVirtualStock=0, $dateofvirtualstock=null) | |
Charge tableau des stats commande fournisseur pour le produit/service. More... | |
load_stats_sending ($socid=0, $filtrestatut='', $forVirtualStock=0, $filterShipmentStatus='') | |
Charge tableau des stats expedition client pour le produit/service. More... | |
load_stats_reception ($socid=0, $filtrestatut='', $forVirtualStock=0, $dateofvirtualstock=null) | |
Charge tableau des stats réception fournisseur pour le produit/service. More... | |
load_stats_inproduction ($socid=0, $filtrestatut='', $forVirtualStock=0, $dateofvirtualstock=null) | |
Charge tableau des stats production pour le produit/service. More... | |
load_stats_contrat ($socid=0) | |
Charge tableau des stats contrat pour le produit/service. More... | |
load_stats_facture ($socid=0) | |
Charge tableau des stats facture pour le produit/service. More... | |
load_stats_facturerec ($socid=0) | |
Charge tableau des stats facture recurrentes pour le produit/service. More... | |
load_stats_facture_fournisseur ($socid=0) | |
Charge tableau des stats facture pour le produit/service. More... | |
get_nb_vente ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units or customers invoices in which product is included. More... | |
get_nb_achat ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units or supplier invoices in which product is included. More... | |
get_nb_propal ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units in proposals in which product is included. More... | |
get_nb_propalsupplier ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units in proposals in which product is included. More... | |
get_nb_order ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units in orders in which product is included. More... | |
get_nb_ordersupplier ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units in orders in which product is included. More... | |
get_nb_contract ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units in orders in which product is included. More... | |
get_nb_mos ($socid, $mode, $filteronproducttype=-1, $year=0, $morefilter='') | |
Return nb of units in orders in which product is included. More... | |
add_sousproduit ($id_pere, $id_fils, $qty, $incdec=1) | |
Link a product/service to a parent product/service. More... | |
update_sousproduit ($id_pere, $id_fils, $qty, $incdec=1) | |
Modify composed product. More... | |
del_sousproduit ($fk_parent, $fk_child) | |
Remove a link between a subproduct and a parent product/service. More... | |
is_sousproduit ($fk_parent, $fk_child) | |
Check if it is a sub-product into a kit. More... | |
add_fournisseur ($user, $id_fourn, $ref_fourn, $quantity) | |
Add a supplier price for the product. More... | |
list_suppliers () | |
Return list of suppliers providing the product or service. More... | |
clone_price ($fromId, $toId) | |
Recopie les prix d'un produit/service sur un autre. More... | |
clone_associations ($fromId, $toId) | |
Clone links between products. More... | |
clone_fournisseurs ($fromId, $toId) | |
Recopie les fournisseurs et prix fournisseurs d'un produit/service sur un autre. More... | |
fetch_prod_arbo ($prod, $compl_path='', $multiply=1, $level=1, $id_parent=0, $ignore_stock_load=0) | |
Fonction recursive uniquement utilisee par get_arbo_each_prod, recompose l'arborescence des sousproduits Define value of this->res. More... | |
get_arbo_each_prod ($multiply=1, $ignore_stock_load=0) | |
Build the tree of subproducts into an array ->res and return it. More... | |
hasFatherOrChild ($mode=0) | |
Count all parent and children products for current product (first level only) More... | |
hasVariants () | |
Return if a product has variants or not. More... | |
isVariant () | |
Return if loaded product is a variant. More... | |
getFather () | |
Return all parent products for current product (first level only) More... | |
getChildsArbo ($id, $firstlevelonly=0, $level=1, $parents=array()) | |
Return childs of product $id. More... | |
get_sousproduits_arbo () | |
getNomUrl ($withpicto=0, $option='', $maxlength=0, $save_lastsearch_value=-1, $notooltip=0, $morecss='', $add_label=0, $sep=' - ') | |
Return clicable link of object (with eventually picto) More... | |
generateDocument ($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) | |
Create a document onto disk according to template module. More... | |
getLibStatut ($mode=0, $type=0) | |
Return label of status of object. More... | |
LibStatut ($status, $mode=0, $type=0) | |
Return label of a given status. More... | |
getLibFinished () | |
Retour label of nature of product. More... | |
correct_stock ($user, $id_entrepot, $nbpiece, $movement, $label='', $price=0, $inventorycode='', $origin_element='', $origin_id=null, $disablestockchangeforsubproduct=0, $extrafields=null) | |
Adjust stock in a warehouse for product. More... | |
correct_stock_batch ($user, $id_entrepot, $nbpiece, $movement, $label='', $price=0, $dlc='', $dluo='', $lot='', $inventorycode='', $origin_element='', $origin_id=null, $disablestockchangeforsubproduct=0, $extrafields=null) | |
Adjust stock in a warehouse for product with batch number. More... | |
load_stock ($option='', $includedraftpoforvirtual=null, $dateofvirtualstock=null) | |
Load information about stock of a product into ->stock_reel, ->stock_warehouse[] (including stock_warehouse[idwarehouse]->detail_batch for batch products) This function need a lot of load. More... | |
load_virtual_stock ($includedraftpoforvirtual=null, $dateofvirtualstock=null) | |
Load value ->stock_theorique of a product. More... | |
loadBatchInfo ($batch) | |
Load existing information about a serial. More... | |
add_photo ($sdir, $file) | |
Move an uploaded file described into $file array into target directory $sdir. More... | |
is_photo_available ($sdir) | |
Return if at least one photo is available. More... | |
liste_photos ($dir, $nbmax=0) | |
Return an array with all photos of product found on disk. More... | |
delete_photo ($file) | |
Delete a photo and its thumbs. More... | |
get_image_size ($file) | |
Load size of image file. More... | |
load_state_board () | |
Load indicators this->nb for the dashboard. More... | |
isProduct () | |
Return if object is a product. More... | |
isService () | |
Return if object is a product. More... | |
isMandatoryPeriod () | |
Return if object have a constraint on mandatory_period. More... | |
get_barcode ($object, $type='') | |
Get a barcode from the module to generate barcode values. More... | |
initAsSpecimen () | |
Initialise an instance with random values. More... | |
getLabelOfUnit ($type='long') | |
Returns the text label from units dictionary. More... | |
hasbatch () | |
Return if object has a sell-by date or eat-by date. More... | |
min_recommended_price () | |
Return minimum product recommended price. More... | |
setCategories ($categories) | |
Sets object to supplied categories. More... | |
generateMultiprices (User $user, $baseprice, $price_type, $price_vat, $npr, $psq) | |
Generates prices for a product based on product multiprice generation rules. More... | |
getRights () | |
Returns the rights used for this class. More... | |
info ($id) | |
Load information for tab info. More... | |
getProductDurationHours () | |
Return the duration in Hours of a service base on duration fields. More... | |
Public Member Functions inherited from CommonObject | |
errorsToString () | |
Method to output saved errors. More... | |
getFormatedCustomerRef ($objref) | |
Return customer ref for screen output. More... | |
getFormatedSupplierRef ($objref) | |
Return supplier ref for screen output. More... | |
getFullName ($langs, $option=0, $nameorder=-1, $maxlen=0) | |
Return full name (civility+' '+name+' '+lastname) More... | |
setUpperOrLowerCase () | |
Set to upper or ucwords/lower if needed. More... | |
getKanbanView ($option='') | |
Return clicable link of object (with eventually picto) More... | |
getFullAddress ($withcountry=0, $sep="\n", $withregion=0, $extralangcode='') | |
Return full address of contact. More... | |
getBannerAddress ($htmlkey, $object) | |
Return full address for banner. More... | |
getLastMainDocLink ($modulepart, $initsharekey=0, $relativelink=0) | |
Return the link of last main doc file for direct public download. More... | |
add_contact ($fk_socpeople, $type_contact, $source='external', $notrigger=0) | |
Add a link between element $this->element and a contact. More... | |
copy_linked_contact ($objFrom, $source='internal') | |
Copy contact from one element to current. More... | |
update_contact ($rowid, $statut, $type_contact_id=0, $fk_socpeople=0) | |
Update a link to contact line. More... | |
delete_contact ($rowid, $notrigger=0) | |
Delete a link to contact line. More... | |
delete_linked_contact ($source='', $code='') | |
Delete all links between an object $this and all its contacts. More... | |
liste_contact ($statusoflink=-1, $source='external', $list=0, $code='', $status=-1) | |
Get array of all contacts for an object. More... | |
swapContactStatus ($rowid) | |
Update status of a contact linked to object. More... | |
liste_type_contact ($source='internal', $order='position', $option=0, $activeonly=0, $code='') | |
Return array with list of possible values for type of contacts. More... | |
listeTypeContacts ($source='internal', $option=0, $activeonly=0, $code='', $element='', $excludeelement='') | |
Return array with list of possible values for type of contacts. More... | |
getIdContact ($source, $code, $status=0) | |
Return id of contacts for a source and a contact code. More... | |
fetch_contact ($contactid=null) | |
Load object contact with id=$this->contact_id into $this->contact. More... | |
fetch_thirdparty ($force_thirdparty_id=0) | |
Load the third party of object, from id $this->socid or $this->fk_soc, into this->thirdparty. More... | |
fetchOneLike ($ref) | |
Looks for an object with ref matching the wildcard provided It does only work when $this->table_ref_field is set. More... | |
fetch_barcode () | |
Load data for barcode into properties ->barcode_type* Properties ->barcode_type that is id of barcode. More... | |
fetch_project () | |
Load the project with id $this->fk_project into this->project. More... | |
fetch_projet () | |
Load the project with id $this->fk_project into this->project. More... | |
fetch_product () | |
Load the product with id $this->fk_product into this->product. More... | |
fetch_user ($userid) | |
Load the user with id $userid into this->user. More... | |
fetch_origin () | |
Read linked origin object. More... | |
fetchObjectFrom ($table, $field, $key, $element=null) | |
Load object from specific field. More... | |
getValueFrom ($table, $id, $field) | |
Getter generic. More... | |
setValueFrom ($field, $value, $table='', $id=null, $format='', $id_field='', $fuser=null, $trigkey='', $fk_user_field='fk_user_modif') | |
Setter generic. More... | |
load_previous_next_ref ($filter, $fieldid, $nodbprefix=0) | |
Load properties id_previous and id_next by comparing $fieldid with $this->ref. More... | |
getListContactId ($source='external') | |
Return list of id of contacts of object. More... | |
setProject ($projectid, $notrigger=0) | |
Link element with a project. More... | |
setPaymentMethods ($id) | |
Change the payments methods. More... | |
setMulticurrencyCode ($code) | |
Change the multicurrency code. More... | |
setMulticurrencyRate ($rate, $mode=1) | |
Change the multicurrency rate. More... | |
setPaymentTerms ($id, $deposit_percent=null) | |
Change the payments terms. More... | |
setTransportMode ($id) | |
Change the transport mode methods. More... | |
setRetainedWarrantyPaymentTerms ($id) | |
Change the retained warranty payments terms. More... | |
setDeliveryAddress ($id) | |
Define delivery address. More... | |
setShippingMethod ($shipping_method_id, $notrigger=false, $userused=null) | |
Change the shipping method. More... | |
setWarehouse ($warehouse_id) | |
Change the warehouse. More... | |
setDocModel ($user, $modelpdf) | |
Set last model used by doc generator. More... | |
setBankAccount ($fk_account, $notrigger=false, $userused=null) | |
Change the bank account. More... | |
line_order ($renum=false, $rowidorder='ASC', $fk_parent_line=true) | |
Save a new position (field rang) for details lines. More... | |
getChildrenOfLine ($id, $includealltree=0) | |
Get children of line. More... | |
line_up ($rowid, $fk_parent_line=true) | |
Update a line to have a lower rank. More... | |
line_down ($rowid, $fk_parent_line=true) | |
Update a line to have a higher rank. More... | |
updateRangOfLine ($rowid, $rang) | |
Update position of line (rang) More... | |
line_ajaxorder ($rows) | |
Update position of line with ajax (rang) More... | |
updateLineUp ($rowid, $rang) | |
Update position of line up (rang) More... | |
updateLineDown ($rowid, $rang, $max) | |
Update position of line down (rang) More... | |
getRangOfLine ($rowid) | |
Get position of line (rang) More... | |
getIdOfLine ($rang) | |
Get rowid of the line relative to its position. More... | |
line_max ($fk_parent_line=0) | |
Get max value used for position of line (rang) More... | |
update_ref_ext ($ref_ext) | |
Update external ref of element. More... | |
update_note ($note, $suffix='') | |
Update note of element. More... | |
update_note_public ($note) | |
Update public note (kept for backward compatibility) More... | |
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). More... | |
add_object_linked ($origin=null, $origin_id=null, $f_user=null, $notrigger=0) | |
Add an object link into llx_element_element. More... | |
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). More... | |
clearObjectLinkedCache () | |
Clear the cache saying that all linked object were already loaded. More... | |
updateObjectLinked ($sourceid=null, $sourcetype='', $targetid=null, $targettype='', $f_user=null, $notrigger=0) | |
Update object linked of a current object. More... | |
deleteObjectLinked ($sourceid=null, $sourcetype='', $targetid=null, $targettype='', $rowid='', $f_user=null, $notrigger=0) | |
Delete all links between an object $this. More... | |
setStatut ($status, $elementId=null, $elementType='', $trigkey='', $fieldstatus='fk_statut') | |
Set status of an object. More... | |
getCanvas ($id=0, $ref='') | |
Load type of canvas of an object if it exists. More... | |
getSpecialCode ($lineid) | |
Get special code of a line. More... | |
isObjectUsed ($id=0, $entity=0) | |
Function to check if an object is used by others. More... | |
hasProductsOrServices ($predefined=-1) | |
Function to say how many lines object contains. More... | |
getTotalDiscount () | |
Function that returns the total amount HT of discounts applied for all lines. More... | |
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. More... | |
setExtraParameters () | |
Set extra parameters. More... | |
formAddObjectLine ($dateSelector, $seller, $buyer, $defaulttpldir='/core/tpl') | |
Show add free and predefined products/services form. More... | |
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. More... | |
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) More... | |
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). More... | |
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). More... | |
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. More... | |
delete_resource ($rowid, $element, $notrigger=0) | |
Delete a link to resource line. More... | |
__clone () | |
Overwrite magic function to solve problem of cloning object that are kept as references. More... | |
indexFile ($destfull, $update_main_doc_field) | |
Index a file into the ECM database. More... | |
addThumbs ($file) | |
Build thumb. More... | |
getDefaultCreateValueFor ($fieldname, $alternatevalue=null) | |
Return the default value to use for a field when showing the create form of object. More... | |
call_trigger ($triggerName, $user) | |
Call trigger based on this instance. More... | |
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. More... | |
setValuesForExtraLanguages ($onlykey='') | |
Fill array_options property of object by extrafields value (using for data sent by forms) More... | |
fetchNoCompute ($id) | |
Function to make a fetch but set environment to avoid to load computed values before. More... | |
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. More... | |
deleteExtraFields () | |
Delete all extra fields values for the current object. More... | |
insertExtraFields ($trigger='', $userused=null) | |
Add/Update all extra fields values for the current object. More... | |
insertExtraLanguages ($trigger='', $userused=null) | |
Add/Update all extra fields values for the current object. More... | |
updateExtraField ($key, $trigger=null, $userused=null) | |
Update 1 extra field value for the current object. More... | |
updateExtraLanguages ($key, $trigger=null, $userused=null) | |
Update an extra language value for the current object. More... | |
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. More... | |
clearFieldError ($fieldKey) | |
clear validation message result for a field More... | |
setFieldError ($fieldKey, $msg='') | |
set validation error message a field More... | |
getFieldError ($fieldKey) | |
get field error message More... | |
validateField ($val, $fieldKey, $fieldValue) | |
Return validation test result for a field. More... | |
showOptionals ($extrafields, $mode='view', $params=null, $keysuffix='', $keyprefix='', $onetrtd=0, $display_type='card') | |
Function to show lines of extrafields with output datas. More... | |
getJSListDependancies ($type='_extra') | |
defineBuyPrice ($unitPrice=0.0, $discountPercent=0.0, $fk_product=0) | |
Get buy price to use for margin calculation. More... | |
show_photos ($modulepart, $sdir, $size=0, $nbmax=0, $nbbyrow=5, $showfilename=0, $showaction=0, $maxHeight=120, $maxWidth=160, $nolink=0, $notitle=0, $usesharelink=0) | |
Show photos of an object (nbmax maximum), into several columns. More... | |
isDate ($info) | |
Function test if type is date. More... | |
isDuration ($info) | |
Function test if type is duration. More... | |
isInt ($info) | |
Function test if type is integer. More... | |
isFloat ($info) | |
Function test if type is float. More... | |
isText ($info) | |
Function test if type is text. More... | |
setVarsFromFetchObj (&$obj) | |
Function to load data from a SQL pointer into properties of current object $this. More... | |
getFieldList ($alias='') | |
Function to concat keys of fields. More... | |
createCommon (User $user, $notrigger=false) | |
Create object into database. More... | |
fetchCommon ($id, $ref=null, $morewhere='') | |
Load object in memory from the database. More... | |
fetchLinesCommon ($morewhere='') | |
Load object in memory from the database. More... | |
updateCommon (User $user, $notrigger=false) | |
Update object into database. More... | |
deleteCommon (User $user, $notrigger=false, $forcechilddeletion=0) | |
Delete object in database. More... | |
deleteByParentField ($parentId=0, $parentField='', $filter=array(), $filtermode="AND") | |
Delete all child object from a parent ID. More... | |
deleteLineCommon (User $user, $idline, $notrigger=false) | |
Delete a line of object in database. More... | |
setStatusCommon ($user, $status, $notrigger=0, $triggercode='') | |
Set to a status. More... | |
initAsSpecimenCommon () | |
Initialise object with example values Id must be 0 if object instance is a specimen. More... | |
fetchComments () | |
Load comments linked with current task. More... | |
getNbComments () | |
Return nb comments already posted. More... | |
trimParameters ($parameters) | |
Trim object parameters. More... | |
getCategoriesCommon ($type_categ) | |
Sets object to given categories. More... | |
setCategoriesCommon ($categories, $type_categ='', $remove_existing=true) | |
Sets object to given categories. More... | |
cloneCategories ($fromId, $toId, $type='') | |
Copy related categories to another object. More... | |
deleteEcmFiles ($mode=0) | |
Delete related files of object in database. More... | |
Static Public Member Functions | |
static | replaceThirdparty (DoliDB $dbs, $origin_id, $dest_id) |
Function used to replace a thirdparty id with another one. More... | |
Static Public Member Functions inherited from CommonObject | |
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. More... | |
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. More... | |
static | deleteAllItemsLinkedByObjectID ($fk_object_where, $field_where, $table_element) |
Function used to remove all items linked to an object id in association table. More... | |
static | commonReplaceThirdparty (DoliDB $dbs, $origin_id, $dest_id, array $tables, $ignoreerrors=0) |
Function used to replace a thirdparty id with another one. More... | |
static | commonReplaceProduct (DoliDB $dbs, $origin_id, $dest_id, array $tables, $ignoreerrors=0) |
Function used to replace a product id with another one. More... | |
Public Attributes | |
$libelle | |
$multiprices = array() | |
Arrays for multiprices. | |
$price_by_qty | |
Price by quantity arrays. | |
$multilangs = array() | |
Array for multilangs. | |
$default_vat_code | |
Default VAT code for product (link to code into llx_c_tva but without foreign keys) | |
$tva_tx | |
Default VAT rate of product. | |
$tva_npr = 0 | |
French VAT NPR (0 or 1) | |
$remise_percent | |
Default discount percent. | |
$localtax1_tx | |
Other local taxes. | |
$pmp | |
Average price value for product entry into stock (PMP) | |
$desiredstock = 0 | |
Ask for replenishment when $desiredstock < $stock_reel. | |
$duration_unit | |
Exoiration unit. | |
$weight | |
Metric of products. | |
$imgWidth | |
Size of image. | |
$product_fourn_id | |
Id du fournisseur. | |
$product_id_already_linked | |
Product ID already linked to a reference supplier. | |
$stock_warehouse = array() | |
Contains detail of stock of product into each warehouse. | |
$ref_fourn | |
const | TYPE_PRODUCT = 0 |
Regular product. | |
const | TYPE_SERVICE = 1 |
Service. | |
const | TYPE_ASSEMBLYKIT = 2 |
Advanced feature: assembly kit. | |
const | TYPE_STOCKKIT = 3 |
Advanced feature: stock kit. | |
Public Attributes inherited from CommonObject | |
$projet | |
$fk_projet | |
$note | |
Protected Attributes | |
$table_ref_field = 'ref' | |
{} | |
Private Member Functions | |
getArrayForPriceCompare ($level=0) | |
used to check if price have really change to avoid log pollution More... | |
_log_price ($user, $level=0) | |
Insert a track that we changed a customer price. More... | |
_get_stats ($sql, $mode, $year=0) | |
Return an array formated for showing graphs. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CommonObject | |
commonGenerateDocument ($modelspath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref, $moreparams=null) | |
Common function for all objects extending CommonObject for generating documents. More... | |
isArray ($info) | |
Function test if type is array. More... | |
canBeNull ($info) | |
Function test if field can be null. More... | |
isForcedToNullIfZero ($info) | |
Function test if field is forced to null if zero or empty. More... | |
isIndex ($info) | |
Function test if is indexed. More... | |
setSaveQuery () | |
Function to prepare a part of the query for insert by returning an array with all properties of object. More... | |
quote ($value, $fieldsentry) | |
Add quote to field value if necessary. More... | |
Class to manage products or services.
Definition at line 46 of file product.class.php.
Product::__construct | ( | $db | ) |
Constructor.
Reimplemented in ProductFournisseur.
Definition at line 562 of file product.class.php.
References db.
|
private |
Return an array formated for showing graphs.
string | $sql | Request to execute |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $year | Year (0=current year, -1=all years) |
Definition at line 3724 of file product.class.php.
|
private |
Insert a track that we changed a customer price.
Definition at line 1788 of file product.class.php.
Product::add_fournisseur | ( | $user, | |
$id_fourn, | |||
$ref_fourn, | |||
$quantity | |||
) |
Add a supplier price for the product.
Note: Duplicate ref is accepted for different quantity only, or for different companies.
User | $user | User that make link |
int | $id_fourn | Supplier id |
string | $ref_fourn | Supplier ref |
float | $quantity | Quantity minimum for price |
Definition at line 4399 of file product.class.php.
Product::add_photo | ( | $sdir, | |
$file | |||
) |
Move an uploaded file described into $file array into target directory $sdir.
string | $sdir | Target directory |
string | $file | Array of file info of file to upload: array('name'=>..., 'tmp_name'=>...) |
Definition at line 5692 of file product.class.php.
Product::add_sousproduit | ( | $id_pere, | |
$id_fils, | |||
$qty, | |||
$incdec = 1 |
|||
) |
Link a product/service to a parent product/service.
int | $id_pere | Id of parent product/service |
int | $id_fils | Id of child product/service |
int | $qty | Quantity |
int | $incdec | 1=Increase/decrease stock of child when parent stock increase/decrease |
Definition at line 4213 of file product.class.php.
Product::check | ( | ) |
Check that ref and label are ok.
Definition at line 573 of file product.class.php.
References dol_sanitizeFileName(), and ref.
Product::check_barcode | ( | $valuetotest, | |
$typefortest | |||
) |
Check barcode.
string | $valuetotest | Value to test |
string | $typefortest | Type of barcode (ISBN, EAN, ...) |
Definition at line 954 of file product.class.php.
Product::clone_associations | ( | $fromId, | |
$toId | |||
) |
Clone links between products.
Definition at line 4616 of file product.class.php.
References db.
Product::clone_fournisseurs | ( | $fromId, | |
$toId | |||
) |
Recopie les fournisseurs et prix fournisseurs d'un produit/service sur un autre.
int | $fromId | Id produit source |
int | $toId | Id produit cible |
Definition at line 4643 of file product.class.php.
References db.
Product::clone_price | ( | $fromId, | |
$toId | |||
) |
Recopie les prix d'un produit/service sur un autre.
int | $fromId | Id product source |
int | $toId | Id product target |
Definition at line 4528 of file product.class.php.
Product::correct_stock | ( | $user, | |
$id_entrepot, | |||
$nbpiece, | |||
$movement, | |||
$label = '' , |
|||
$price = 0 , |
|||
$inventorycode = '' , |
|||
$origin_element = '' , |
|||
$origin_id = null , |
|||
$disablestockchangeforsubproduct = 0 , |
|||
$extrafields = null |
|||
) |
Adjust stock in a warehouse for product.
User | $user | user asking change |
int | $id_entrepot | id of warehouse |
double | $nbpiece | nb of units (should be always positive, use $movement to decide if we add or remove) |
int | $movement | 0 = add, 1 = remove |
string | $label | Label of stock movement |
double | $price | Unit price HT of product, used to calculate average weighted price (PMP in french). If 0, average weighted price is not changed. |
string | $inventorycode | Inventory code |
string | $origin_element | Origin element type |
int | $origin_id | Origin id of element |
int | $disablestockchangeforsubproduct | Disable stock change for sub-products of kit (usefull only if product is a subproduct) |
Extrafields | $extrafields | Array of extrafields |
Definition at line 5346 of file product.class.php.
Product::correct_stock_batch | ( | $user, | |
$id_entrepot, | |||
$nbpiece, | |||
$movement, | |||
$label = '' , |
|||
$price = 0 , |
|||
$dlc = '' , |
|||
$dluo = '' , |
|||
$lot = '' , |
|||
$inventorycode = '' , |
|||
$origin_element = '' , |
|||
$origin_id = null , |
|||
$disablestockchangeforsubproduct = 0 , |
|||
$extrafields = null |
|||
) |
Adjust stock in a warehouse for product with batch number.
User | $user | user asking change |
int | $id_entrepot | id of warehouse |
double | $nbpiece | nb of units (should be always positive, use $movement to decide if we add or remove) |
int | $movement | 0 = add, 1 = remove |
string | $label | Label of stock movement |
double | $price | Price to use for stock eval |
integer | $dlc | eat-by date |
integer | $dluo | sell-by date |
string | $lot | Lot number |
string | $inventorycode | Inventory code |
string | $origin_element | Origin element type |
int | $origin_id | Origin id of element |
int | $disablestockchangeforsubproduct | Disable stock change for sub-products of kit (usefull only if product is a subproduct) |
Extrafields | $extrafields | Array of extrafields |
Definition at line 5406 of file product.class.php.
Product::create | ( | $user, | |
$notrigger = 0 |
|||
) |
Insert product into database.
Definition at line 600 of file product.class.php.
Product::del_sousproduit | ( | $fk_parent, | |
$fk_child | |||
) |
Remove a link between a subproduct and a parent product/service.
int | $fk_parent | Id of parent product (child will no more be linked to it) |
int | $fk_child | Id of child product |
Definition at line 4310 of file product.class.php.
Product::delete | ( | User | $user, |
$notrigger = 0 |
|||
) |
Delete a product from database (if not used)
Definition at line 1353 of file product.class.php.
Product::delete_photo | ( | $file | ) |
Delete a photo and its thumbs.
string | $file | Path to image file |
Definition at line 5840 of file product.class.php.
Product::delMultiLangs | ( | $langtodelete, | |
$user | |||
) |
Delete a language for this product.
string | $langtodelete | Language code to delete |
User | $user | Object user making delete |
Definition at line 1622 of file product.class.php.
Product::fetch | ( | $id = '' , |
|
$ref = '' , |
|||
$ref_ext = '' , |
|||
$barcode = '' , |
|||
$ignore_expression = 0 , |
|||
$ignore_price_load = 0 , |
|||
$ignore_lang_load = 0 |
|||
) |
Load a product in memory from database.
int | $id | Id of product/service to load |
string | $ref | Ref of product/service to load |
string | $ref_ext | Ref ext of product/service to load |
string | $barcode | Barcode of product/service to load |
int | $ignore_expression | When module dynamicprices is on, ignores the math expression for calculating price and uses the db value instead |
int | $ignore_price_load | Load product without loading $this->multiprices... array (when we are sure we don't need them) |
int | $ignore_lang_load | Load product without loading $this->multilangs language arrays (when we are sure we don't need them) |
French VAT NPR
Local taxes
Definition at line 2348 of file product.class.php.
Product::fetch_prod_arbo | ( | $prod, | |
$compl_path = '' , |
|||
$multiply = 1 , |
|||
$level = 1 , |
|||
$id_parent = 0 , |
|||
$ignore_stock_load = 0 |
|||
) |
Fonction recursive uniquement utilisee par get_arbo_each_prod, recompose l'arborescence des sousproduits Define value of this->res.
array | $prod | Products array |
string | $compl_path | Directory path of parents to add before |
int | $multiply | Because each sublevel must be multiplicated by parent nb |
int | $level | Init level |
int | $id_parent | Id parent |
int | $ignore_stock_load | Ignore stock load |
Definition at line 4694 of file product.class.php.
Product::generateDocument | ( | $modele, | |
$outputlangs, | |||
$hidedetails = 0 , |
|||
$hidedesc = 0 , |
|||
$hideref = 0 |
|||
) |
Create a document onto disk according to template module.
string | $modele | Force model to use ('' to not force) |
Translate | $outputlangs | Object langs to use for output |
int | $hidedetails | Hide details of lines |
int | $hidedesc | Hide description |
int | $hideref | Hide ref |
Definition at line 5180 of file product.class.php.
Product::generateMultiprices | ( | User | $user, |
$baseprice, | |||
$price_type, | |||
$price_vat, | |||
$npr, | |||
$psq | |||
) |
Generates prices for a product based on product multiprice generation rules.
User | $user | User that updates the prices |
float | $baseprice | Base price |
string | $price_type | Base price type |
float | $price_vat | VAT % tax |
int | $npr | NPR |
string | $psq | ¿? |
Definition at line 6160 of file product.class.php.
Product::get_arbo_each_prod | ( | $multiply = 1 , |
|
$ignore_stock_load = 0 |
|||
) |
Build the tree of subproducts into an array ->res and return it.
this->sousprods must have been loaded by this->get_sousproduits_arbo()
int | $multiply | Because each sublevel must be multiplicated by parent nb |
int | $ignore_stock_load | Ignore stock load |
Definition at line 4758 of file product.class.php.
Product::get_barcode | ( | $object, | |
$type = '' |
|||
) |
Get a barcode from the module to generate barcode values.
Return value is stored into this->barcode
Product | $object | Object product or service |
string | $type | Barcode type (ean, isbn, ...) |
Definition at line 5964 of file product.class.php.
Product::get_buyprice | ( | $prodfournprice, | |
$qty, | |||
$product_id = 0 , |
|||
$fourn_ref = '' , |
|||
$fk_soc = 0 |
|||
) |
Read price used by a provider.
We enter as input couple prodfournprice/qty or triplet qty/product_id/fourn_ref. This also set some properties on product like ->buyprice, ->fourn_pu, ...
int | $prodfournprice | Id du tarif = rowid table product_fournisseur_price |
double | $qty | Quantity asked or -1 to get first entry found |
int | $product_id | Filter on a particular product id |
string | $fourn_ref | Filter on a supplier price ref. 'none' to exclude ref in search. |
int | $fk_soc | If of supplier |
Definition at line 1978 of file product.class.php.
Product::get_image_size | ( | $file | ) |
Load size of image file.
string | $file | Path to file |
Definition at line 5874 of file product.class.php.
Product::get_nb_achat | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units or supplier invoices in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 3850 of file product.class.php.
Product::get_nb_contract | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units in orders in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 4107 of file product.class.php.
Product::get_nb_mos | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units in orders in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 4161 of file product.class.php.
Product::get_nb_order | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units in orders in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 4005 of file product.class.php.
Product::get_nb_ordersupplier | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units in orders in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 4056 of file product.class.php.
Product::get_nb_propal | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units in proposals in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 3902 of file product.class.php.
Product::get_nb_propalsupplier | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units in proposals in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 3953 of file product.class.php.
Product::get_nb_vente | ( | $socid, | |
$mode, | |||
$filteronproducttype = -1 , |
|||
$year = 0 , |
|||
$morefilter = '' |
|||
) |
Return nb of units or customers invoices in which product is included.
int | $socid | Limit count on a particular third party id |
string | $mode | 'byunit'=number of unit, 'bynumber'=nb of entities |
int | $filteronproducttype | 0=To filter on product only, 1=To filter on services only |
int | $year | Year (0=last 12 month, -1=all years) |
string | $morefilter | More sql filters |
Definition at line 3797 of file product.class.php.
Product::get_sousproduits_arbo | ( | ) |
Return tree of all subproducts for product. Tree contains array of array(0=prodid, 1=>qty, 2=>product type, 3=>label, 4=>incdec, 5=>product ref) Set this->sousprods
Definition at line 4977 of file product.class.php.
|
private |
used to check if price have really change to avoid log pollution
int | $level | price level to change |
Definition at line 1750 of file product.class.php.
Product::getChildsArbo | ( | $id, | |
$firstlevelonly = 0 , |
|||
$level = 1 , |
|||
$parents = array() |
|||
) |
Return childs of product $id.
int | $id | Id of product to search childs of |
int | $firstlevelonly | Return only direct child |
int | $level | Level of recursing call (start to 1) |
array | $parents | Array of all parents of $id |
Definition at line 4904 of file product.class.php.
Product::getFather | ( | ) |
Return all parent products for current product (first level only)
Definition at line 4863 of file product.class.php.
Product::getLabelOfUnit | ( | $type = 'long' | ) |
Returns the text label from units dictionary.
string | $type | Label type (long or short) |
Definition at line 6041 of file product.class.php.
Product::getLibFinished | ( | ) |
Retour label of nature of product.
Definition at line 5305 of file product.class.php.
Product::getLibStatut | ( | $mode = 0 , |
|
$type = 0 |
|||
) |
Return label of status of object.
int | $mode | 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto |
int | $type | 0=Sell, 1=Buy, 2=Batch Number management |
Definition at line 5204 of file product.class.php.
Product::getMultiLangs | ( | ) |
Load array this->multilangs.
Definition at line 1714 of file product.class.php.
Product::getNomUrl | ( | $withpicto = 0 , |
|
$option = '' , |
|||
$maxlength = 0 , |
|||
$save_lastsearch_value = -1 , |
|||
$notooltip = 0 , |
|||
$morecss = '' , |
|||
$add_label = 0 , |
|||
$sep = ' - ' |
|||
) |
Return clicable link of object (with eventually picto)
int | $withpicto | Add picto into link |
string | $option | Where point the link ('stock', 'composition', 'category', 'supplier', '') |
int | $maxlength | Maxlength of ref |
int | $save_lastsearch_value | -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking |
int | $notooltip | No tooltip |
string | $morecss | ''=Add more css on link |
int | $add_label | 0=Default, 1=Add label into string, >1=Add first chars into string |
string | $sep | ' - '=Separator between ref and label if option 'add_label' is set |
Reimplemented in ProductFournisseur.
Definition at line 5003 of file product.class.php.
Product::getProductDurationHours | ( | ) |
Return the duration in Hours of a service base on duration fields.
Definition at line 6275 of file product.class.php.
Product::getRights | ( | ) |
Returns the rights used for this class.
Reimplemented from CommonObject.
Definition at line 6216 of file product.class.php.
Product::getSellPrice | ( | $thirdparty_seller, | |
$thirdparty_buyer, | |||
$pqp = 0 |
|||
) |
Return price of sell of a product for a seller/buyer/product.
Societe | $thirdparty_seller | Seller |
Societe | $thirdparty_buyer | Buyer |
int | $pqp | Id of product price per quantity if a selection was done of such a price |
Definition at line 1855 of file product.class.php.
Product::hasbatch | ( | ) |
Return if object has a sell-by date or eat-by date.
Definition at line 6076 of file product.class.php.
Product::hasFatherOrChild | ( | $mode = 0 | ) |
Count all parent and children products for current product (first level only)
int | $mode | 0=Both parent and child, -1=Parents only, 1=Children only |
Definition at line 4780 of file product.class.php.
Product::hasVariants | ( | ) |
Return if a product has variants or not.
Definition at line 4812 of file product.class.php.
Product::info | ( | $id | ) |
Load information for tab info.
int | $id | Id of thirdparty to load |
Definition at line 6233 of file product.class.php.
Product::initAsSpecimen | ( | ) |
Initialise an instance with random values.
Used to build previews or test instances. id must be 0 if object instance is a specimen.
Definition at line 5995 of file product.class.php.
Product::is_photo_available | ( | $sdir | ) |
Return if at least one photo is available.
string | $sdir | Directory to scan |
Definition at line 5738 of file product.class.php.
Product::is_sousproduit | ( | $fk_parent, | |
$fk_child | |||
) |
Check if it is a sub-product into a kit.
int | $fk_parent | Id of parent kit product |
int | $fk_child | Id of child product |
Definition at line 4359 of file product.class.php.
Product::isMandatoryPeriod | ( | ) |
Return if object have a constraint on mandatory_period.
Definition at line 5951 of file product.class.php.
Product::isProduct | ( | ) |
Return if object is a product.
Definition at line 5930 of file product.class.php.
References type, and TYPE_PRODUCT.
Product::isService | ( | ) |
Return if object is a product.
Definition at line 5940 of file product.class.php.
References type, and TYPE_SERVICE.
Product::isVariant | ( | ) |
Return if loaded product is a variant.
Definition at line 4835 of file product.class.php.
Product::LibStatut | ( | $status, | |
$mode = 0 , |
|||
$type = 0 |
|||
) |
Return label of a given status.
int | $status | Statut |
int | $mode | 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 6=Long label + Picto |
int | $type | 0=Status "to sell", 1=Status "to buy", 2=Status "to Batch" |
Definition at line 5228 of file product.class.php.
Product::list_suppliers | ( | ) |
Return list of suppliers providing the product or service.
Definition at line 4494 of file product.class.php.
Product::liste_photos | ( | $dir, | |
$nbmax = 0 |
|||
) |
Return an array with all photos of product found on disk.
There is no sorting criteria.
string | $dir | Directory to scan |
int | $nbmax | Number maxium of photos (0=no maximum) |
Definition at line 5780 of file product.class.php.
Product::load_state_board | ( | ) |
Load indicators this->nb for the dashboard.
Definition at line 5889 of file product.class.php.
Product::load_stats_bom | ( | $socid = 0 | ) |
Charge tableau des stats OF pour le produit/service.
int | $socid | Id societe |
Definition at line 2819 of file product.class.php.
Product::load_stats_commande | ( | $socid = 0 , |
|
$filtrestatut = '' , |
|||
$forVirtualStock = 0 |
|||
) |
Charge tableau des stats commande client pour le produit/service.
int | $socid | Id societe pour filtrer sur une societe |
string | $filtrestatut | Id statut pour filtrer sur un statut |
int | $forVirtualStock | Ignore rights filter for virtual stock calculation. Set when load_stats_commande is used for virtual stock calculation. |
Definition at line 3019 of file product.class.php.
Product::load_stats_commande_fournisseur | ( | $socid = 0 , |
|
$filtrestatut = '' , |
|||
$forVirtualStock = 0 , |
|||
$dateofvirtualstock = null |
|||
) |
Charge tableau des stats commande fournisseur pour le produit/service.
int | $socid | Id societe pour filtrer sur une societe |
string | $filtrestatut | Id des statuts pour filtrer sur des statuts |
int | $forVirtualStock | Ignore rights filter for virtual stock calculation. |
int | $dateofvirtualstock | Date of virtual stock |
Definition at line 3142 of file product.class.php.
Product::load_stats_contrat | ( | $socid = 0 | ) |
Charge tableau des stats contrat pour le produit/service.
int | $socid | Id societe |
Definition at line 3446 of file product.class.php.
Product::load_stats_facture | ( | $socid = 0 | ) |
Charge tableau des stats facture pour le produit/service.
int | $socid | Id societe |
Definition at line 3520 of file product.class.php.
Product::load_stats_facture_fournisseur | ( | $socid = 0 | ) |
Charge tableau des stats facture pour le produit/service.
int | $socid | Id societe |
Definition at line 3669 of file product.class.php.
Product::load_stats_facturerec | ( | $socid = 0 | ) |
Charge tableau des stats facture recurrentes pour le produit/service.
int | $socid | Id societe |
Definition at line 3595 of file product.class.php.
Product::load_stats_inproduction | ( | $socid = 0 , |
|
$filtrestatut = '' , |
|||
$forVirtualStock = 0 , |
|||
$dateofvirtualstock = null |
|||
) |
Charge tableau des stats production pour le produit/service.
int | $socid | Id societe pour filtrer sur une societe |
string | $filtrestatut | Id statut pour filtrer sur un statut |
int | $forVirtualStock | Ignore rights filter for virtual stock calculation. |
int | $dateofvirtualstock | Date of virtual stock |
Definition at line 3350 of file product.class.php.
Product::load_stats_mo | ( | $socid = 0 | ) |
Charge tableau des stats OF pour le produit/service.
int | $socid | Id societe |
Definition at line 2759 of file product.class.php.
Product::load_stats_propale | ( | $socid = 0 | ) |
Charge tableau des stats propale pour le produit/service.
int | $socid | Id societe |
Definition at line 2888 of file product.class.php.
Product::load_stats_proposal_supplier | ( | $socid = 0 | ) |
Charge tableau des stats propale pour le produit/service.
int | $socid | Id thirdparty |
Definition at line 2963 of file product.class.php.
Product::load_stats_reception | ( | $socid = 0 , |
|
$filtrestatut = '' , |
|||
$forVirtualStock = 0 , |
|||
$dateofvirtualstock = null |
|||
) |
Charge tableau des stats réception fournisseur pour le produit/service.
int | $socid | Id societe pour filtrer sur une societe |
string | $filtrestatut | Id statut pour filtrer sur un statut |
int | $forVirtualStock | Ignore rights filter for virtual stock calculation. |
int | $dateofvirtualstock | Date of virtual stock |
Definition at line 3289 of file product.class.php.
Product::load_stats_sending | ( | $socid = 0 , |
|
$filtrestatut = '' , |
|||
$forVirtualStock = 0 , |
|||
$filterShipmentStatus = '' |
|||
) |
Charge tableau des stats expedition client pour le produit/service.
int | $socid | Id societe pour filtrer sur une societe |
string | $filtrestatut | [=''] Ids order status separated by comma |
int | $forVirtualStock | Ignore rights filter for virtual stock calculation. |
string | $filterShipmentStatus | [=''] Ids shipment status separated by comma |
Definition at line 3203 of file product.class.php.
Product::load_stock | ( | $option = '' , |
|
$includedraftpoforvirtual = null , |
|||
$dateofvirtualstock = null |
|||
) |
Load information about stock of a product into ->stock_reel, ->stock_warehouse[] (including stock_warehouse[idwarehouse]->detail_batch for batch products) This function need a lot of load.
If you use it on list, use a cache to execute it once for each product id. If ENTREPOT_EXTRA_STATUS is set, filtering on warehouse status is possible.
string | $option | '' = Load all stock info, also from closed and internal warehouses, 'nobatch', 'novirtual' You can also filter on 'warehouseclosed', 'warehouseopen', 'warehouseinternal' |
int | $includedraftpoforvirtual | Include draft status of PO for virtual stock calculation |
int | $dateofvirtualstock | Date of virtual stock |
Definition at line 5459 of file product.class.php.
Product::load_virtual_stock | ( | $includedraftpoforvirtual = null , |
|
$dateofvirtualstock = null |
|||
) |
Load value ->stock_theorique of a product.
Property this->id must be defined. This function need a lot of load. If you use it on list, use a cache to execute it one for each product id.
int | $includedraftpoforvirtual | Include draft status and not yet approved Purchase Orders for virtual stock calculation |
int | $dateofvirtualstock | Date of virtual stock |
Definition at line 5538 of file product.class.php.
Product::loadBatchInfo | ( | $batch | ) |
Load existing information about a serial.
string | $batch | Lot/serial number |
Definition at line 5659 of file product.class.php.
Product::log_price_delete | ( | $user, | |
$rowid | |||
) |
Delete a price line.
User | $user | Object user |
int | $rowid | Line id to delete |
Definition at line 1827 of file product.class.php.
Product::min_recommended_price | ( | ) |
Return minimum product recommended price.
Definition at line 6088 of file product.class.php.
|
static |
Function used to replace a thirdparty id with another one.
Reimplemented in ProductFournisseur.
Definition at line 6139 of file product.class.php.
References CommonObject\commonReplaceThirdparty().
Product::setAccountancyCode | ( | $type, | |
$value | |||
) |
Sets an accountancy code for a product.
Also calls PRODUCT_MODIFY trigger when modified
string | $type | It can be 'buy', 'buy_intra', 'buy_export', 'sell', 'sell_intra' or 'sell_export' |
string | $value | Accountancy code |
Definition at line 1654 of file product.class.php.
Product::setCategories | ( | $categories | ) |
Sets object to supplied categories.
Deletes object from existing categories not supplied. Adds it to non existing supplied categories. Existing categories are left untouch.
int[] | int | $categories | Category or categories IDs |
Definition at line 6125 of file product.class.php.
Product::setMultiLangs | ( | $user | ) |
Update or add a translation for a product.
User | $user | Object user making update |
Definition at line 1512 of file product.class.php.
Product::setPriceExpression | ( | $expression_id | ) |
Sets the supplier price expression.
int | $expression_id | Expression |
Definition at line 2327 of file product.class.php.
Product::update | ( | $id, | |
$user, | |||
$notrigger = false , |
|||
$action = 'update' , |
|||
$updatetype = false |
|||
) |
Update a record into database.
If batch flag is set to on, we create records into llx_product_batch
int | $id | Id of product |
User | $user | Object user making update |
int | $notrigger | Disable triggers |
string | $action | Current action for hookmanager ('add' or 'update') |
boolean | $updatetype | Update product type |
Definition at line 990 of file product.class.php.
Product::update_sousproduit | ( | $id_pere, | |
$id_fils, | |||
$qty, | |||
$incdec = 1 |
|||
) |
Modify composed product.
int | $id_pere | Id of parent product/service |
int | $id_fils | Id of child product/service |
int | $qty | Quantity |
int | $incdec | 1=Increase/decrease stock of child when parent stock increase/decrease |
Definition at line 4272 of file product.class.php.
Product::updatePrice | ( | $newprice, | |
$newpricebase, | |||
$user, | |||
$newvat = '' , |
|||
$newminprice = 0 , |
|||
$level = 0 , |
|||
$newnpr = 0 , |
|||
$newpbq = 0 , |
|||
$ignore_autogen = 0 , |
|||
$localtaxes_array = array() , |
|||
$newdefaultvatcode = '' |
|||
) |
Modify customer price of a product/Service for a given level.
double | $newprice | New price |
string | $newpricebase | HT or TTC |
User | $user | Object user that make change |
double | $newvat | New VAT Rate (For example 8.5. Should not be a string) |
double | $newminprice | New price min |
int | $level | 0=standard, >0 = level if multilevel prices |
int | $newnpr | 0=Standard vat rate, 1=Special vat rate for French NPR VAT |
int | $newpbq | 1 if it has price by quantity |
int | $ignore_autogen | Used to avoid infinite loops |
array | $localtaxes_array | Array with localtaxes info array('0'=>type1,'1'=>rate1,'2'=>type2,'3'=>rate2) (loaded by getLocalTaxesFromRate(vatrate, 0, ...) function). |
string | $newdefaultvatcode | Default vat code |
Definition at line 2133 of file product.class.php.
Product::verify | ( | ) |
Check properties of product are ok (like name, barcode, ...).
All properties must be already loaded on object (this->barcode, this->barcode_type_code, ...).
Definition at line 902 of file product.class.php.
Product::$libelle |
Product::$ref_fourn |