Skip to content

Vendor Management

Module: vendor_management. The vendor register: companies, their contacts, the categories and products they supply, and an evaluation status. Every other procurement form picks its vendor from here.

How this page was verified

Written from master on 2026-09-06 and compared with the big five the same day. No earlier page existed. Four files, about 90 database calls, nearly all on $pdo.

The data

TableHolds
ts_vendorvendor_code, vendor_desc, vendor_company, vendor_address, country_id, zip_code, phones and fax, vendor_emails, vendor_currency_code, vat_registration_no, gen_bus_posting_group, and the evaluation set vendor_evaluation_status, vendor_evaluation_date, assessor, rating
ts_vendor_contactpeople at the vendor: name, email, phone, fax, mobile, position, is_courirer (sic), same_tel_as_vendor, same_fax_as_vendor
ts_map_vendorvendor ↔ ts_category
ts_map_vendor_productvendor ↔ product from the Procurement settings
ts_evaluation_statusthe evaluation codes (eval_code, eval_desc, eval_stat)

The screen

vendor_management.php dispatches to vendor.php (the company grid) and vendor_contact.php (the contact grid). Actions: adddata, editdata, deletedata, savedata, saveImport (Excel import through xls.inc.php), moveRow, category helpers (getCategory, get_parent_category, uncheckChildCategory), product helpers (getProductList, getSelectedVendorProductList), phone-code helpers, and the contact set (adddataVendorContact, savedatavendorcontact, update_Data_Vendor_Contact, list_vc, refill_vcontact).

The same two screens are also reachable from the Setting menu as the MODULE_REFERENCE_GROUP_CODE_VENDOR group (vendor, vendor_contact).

What still runs on the legacy helper

Two calls to iw_mysql_query() against 86 uses of $pdo. The module is effectively migrated; the two legacy calls sit in rarely used helpers.

Gotchas

  • Category is a tree. Ticking a parent ticks the children; uncheckChildCategory is the reverse. A vendor mapped only to a child does not show under a parent filter.
  • Deleting a vendor does not check references. deletedata removes the vendor, its contacts and its category rows, nothing else. RFQ invitations, POs and MRRs keep the vendor_id and then show a blank vendor.

Instance differences

Checked on 2026-09-06.

InstanceDifference
JOTREInstalled. vendor.php differs from master.
Jadestone, Medco, TimasNot installed in their QA databases. Code identical to master.