Обновление основного прикрепления

EXECUTE block
/*
 * Скрипт обновления основного прикрепления в карточке,
 * если у пациента указано несколько основных прикреплений
 *
 * Автор Коробка А.А.
 */
AS
--
DECLARE pcode TYPE OF COLUMN clients.pcode;
DECLARE histid TYPE OF COLUMN clhistnum.histid;
BEGIN
  FOR SELECT c.pcode FROM clients c
        JOIN clhistnum cl ON cl.pcode=c.pcode
       GROUP BY c.pcode
      HAVING SUM(mainjid)>1
  INTO pcode do
  BEGIN
    UPDATE clhistnum SET mainjid=0 WHERE pcode= :pcode;
    --
    histid = NULL;
    SELECT FIRST 1 histid FROM clhistnum c
     WHERE COALESCE(c.datecancel, c.fdate, CURRENT_TIMESTAMP)>CURRENT_DATE AND pcode= :pcode
      INTO histid;
    UPDATE clhistnum SET mainjid=1 WHERE histid= :histid;
    --
  END
END

администрирование/скрипты/цбд/юл/обновление.основного.прикрепления.txt · Последние изменения: 2019/07/04 08:15 (внешнее изменение)