pears.iqacSelfBillCreate

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

CREATE PROCEDURE "pears"."iqacSelfBillCreate"( 
  /* Application Maintained Function / Procedure - DO NOT EDIT*/
  IN "pSessionID" CHAR(20),IN "pDocDate" DATE ) 
RESULT( "pResult" CHAR(250),"pinvcount" INTEGER ) 
BEGIN
  DECLARE "res" INTEGER;
  DECLARE "invcount" INTEGER;
  DECLARE "acc" CHAR(12);
  SET "invcount" = 0;
  -- rewrite as loop
  SELECT FIRST "accountcode" INTO "acc" FROM "InvoiceValidReportData" WHERE "sessionid" = "psessionid" AND "processed" = 0 ORDER BY "sortorder" ASC;
  while "acc" IS NOT NULL loop
    CALL "iqacSelfBillOneAccount"("acc","psessionid","pdocdate","invcount");
    --    update InvoiceValidReportData set processed = 1 where accountcode = acc;
    -- above done for each timesheet
    SET "acc" = NULL;
    SELECT FIRST "accountcode" INTO "acc" FROM "InvoiceValidReportData" WHERE "sessionid" = "psessionid" AND "processed" = 0 ORDER BY "sortorder" ASC
  END loop;
  SELECT '0:~Success',"invcount"
exception
  WHEN others THEN
    resignal;
    SELECT '1:~Failed',"invcount"
END
GO
 
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."iqacSelfBillCreate" IS 
{CREATE PROCEDURE iqacSelfBillCreate 
 
/* Application Maintained Function / Procedure - DO NOT EDIT*/
 
( 
  IN pSessionID CHAR(20),IN pDocDate DATE ) 
RESULT( pResult CHAR(250),pinvcount INTEGER ) 
BEGIN
  DECLARE res INTEGER;
  DECLARE invcount INTEGER;
  DECLARE acc CHAR(12);
  SET invcount = 0;
  -- rewrite as loop
  SELECT FIRST accountcode INTO acc FROM InvoiceValidReportData WHERE sessionid = psessionid AND processed = 0 ORDER BY sortorder ASC;
  while acc IS NOT NULL loop
    CALL iqacSelfBillOneAccount(acc,psessionid,pdocdate,invcount);
    --    update InvoiceValidReportData set processed = 1 where accountcode = acc;
    -- above done for each timesheet
    SET acc = NULL;
    SELECT FIRST accountcode INTO acc FROM InvoiceValidReportData WHERE sessionid = psessionid AND processed = 0 ORDER BY sortorder ASC
  END loop;
  SELECT '0:~Success',invcount
exception
  WHEN others THEN
    resignal;
    SELECT '1:~Failed',invcount
END
}
  • database/procedures/pears_iqacselfbillcreate.txt
  • Last modified: 2026/08/07 19:24
  • by 127.0.0.1