pears.CollectionItemDescription

Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.

CREATE FUNCTION "pears"."CollectionItemDescription"( 
  /* Application Maintained Function / Procedure - DO NOT EDIT*/
  IN "CollectionID" CHAR(20),IN "ItemType" CHAR(2),IN "ItemID" CHAR(20) ) 
RETURNS VARCHAR(250)
BEGIN
  DECLARE "rv" VARCHAR(250);
  --  DECLARE CNote LONG VARCHAR;
  /* Item Types P -person, C -company, E -employment, L -placement, R -progress, T -timesheet (full), I -Invoice, */
  /*            V -vacancy, Q -timesheet query, 0 -contact event, S - Shift, Z- Provisional Timesheet */
  /* can use collectionid to get type */
  CASE "ItemType"
  WHEN 'O' THEN SET "rv" = 'Contact Event'
  WHEN 'H' THEN SELECT "name" INTO "rv" FROM "collection" WHERE "collectionID" = "ItemID"
  WHEN 'E' THEN SELECT "string"("person"."name",', ',"company"."name") INTO "rv" FROM "employment" KEY JOIN("company","person") WHERE "employmentid" = "ItemID"
  WHEN 'P' THEN SELECT "name" INTO "rv" FROM "person" WHERE "personid" = "ItemID"
  WHEN 'Q' THEN SELECT "name" INTO "rv" FROM "person" KEY JOIN "tsquerylog" WHERE "tsquerylogid" = "ItemID"
  WHEN 'T' THEN SELECT "string"("serialnumber",' - ',"name") INTO "rv" FROM "person" KEY JOIN "temptimesheet" WHERE "temptimesheetid" = "ItemID"
  WHEN 'S' THEN SELECT "ShiftSerialNumber" INTO "rv" FROM "tempshift" KEY JOIN "tempshiftplan" WHERE "tempshiftid" = "ItemID"
  WHEN 'Z' THEN SELECT "string"("serialnumber",' - ',"name") INTO "rv" FROM "person" KEY JOIN "tempprovtimesheet" WHERE "tempprovtimesheetid" = "ItemID"
  WHEN 'R' THEN SELECT "string"("p"."name",' - ',"c"."name") INTO "rv" FROM "person" KEY JOIN "progress" KEY JOIN "vacancy" KEY JOIN "employment" KEY JOIN "company" WHERE "progressid" = "ItemID"
  WHEN 'C' THEN SELECT "string"("name",', ',"addr1",', ',"postcode") INTO "rv" FROM "company" WHERE "companyid" = "ItemID"
  WHEN 'I' THEN SELECT "string"("ourref",' - ',(SELECT "name" FROM "company" WHERE "companyid" = "GetInvoiceCompanyID"("AccountCode"))) INTO "rv" FROM "IQacDocument" WHERE "DocumentID" = "ItemID"
  WHEN 'V' THEN SELECT "string"("v"."Position",' - ',"c"."Name") INTO "rv" FROM "Company" AS "c" KEY JOIN "Employment" AS "e" KEY JOIN "Vacancy" AS "v" WHERE "v"."VacancyID" = "ItemID"
  WHEN 'L' THEN SELECT "string"("Person"."Name",' as ',"Employment"."Position",' at ',"Company"."Name") INTO "rv" FROM "Placement"
        KEY JOIN("Employment" KEY JOIN "Person","Vacancy" KEY JOIN "Employment" AS "ce" KEY JOIN "Company") WHERE "Placement"."PlacementID" = "ItemID"
  END CASE;
  /*if ItemType <> 'H' then 
select trim(substr(notes,1,35)) into CNote from collection where ID = ItemID;
if CNote > '' then set rv = string(rv,' - ',CNote)
end if
end if;*/
  RETURN "rv"
END
  • database/functions/pears_collectionitemdescription.txt
  • Last modified: 2026/08/07 19:24
  • by 127.0.0.1