Hi,
I have updated the rule as mentioned below, and the current-responsible-id is now being asserted correctly. Could you please confirm if the earlier issue was due to the older version, as I am currently using 6.4?
Rule:
(defrule NEXT-RESPONSIBLE::update-current-responsible-on-line-item
?eli <- (era-line-item
(id ?id)
(order ?order)
(current-responsible-id 0)
)
(current-responsible (insurance-id ?insurance-id-current))
(not (exists (update-current-responsible-on-line-item ?id)))
=>
(modify ?eli (current-responsible-id ?insurance-id-current))
(assert (update-current-responsible-on-line-item ?id))
)
Output:
CLIPS> (run 3)
==> f-16140 (current-responsible (insurance-id 5289) (plan-id 31) (payer-display-name "HUMANA") (payer-id "61101") (priority "P"))
==> f-16141 (next-responsible (insurance-id 5286) (plan-id 16) (payer-id "00590") (priority "S") (is-forcefull FALSE))
<== f-15067 (era-line-item ... (current-responsible-id 0) ...)
==> f-15067 (era-line-item ... (current-responsible-id 5289) ...)
==> f-16142 (update-current-responsible-on-line-item 17202)
CLIPS> (run 1)
<== f-15065 (era-line-item ... (current-responsible-id 0) ...)
==> f-15065 (era-line-item ... (current-responsible-id 5289) ...)
==> f-16143 (update-current-responsible-on-line-item 17201)