I have tried this out in the demo system and it is not functioning as designed.
In the billing manager, when a group of encounters is being batched for claims. There is this a popup window that asks the question
"Would you like them to be marked as cleared?"
The choices are Ok to clear or Cancel to continue processing. If Cancel is selected, the encounter is processed and cleared from the screen.
According to the instructions, that is not supposed to happen.
To get it back in queue, it has to be reopened.
In the billing_report.php the logic is this.
if(confirm(Message + "\n\n\n<?php echo addslashes(xl('Total')); ?>" + ' ' + CheckBoxBillingCount + ' ' + "<?php echo addslashes(xl('Selected')); ?>\n" +
"<?php echo addslashes(xl('Would You Like them to be Marked as Cleared.')); ?>\n" + "<?php echo addslashes(xl('Click OK to Clear or Cancel to continue processing.')); ?>"))
{
document.getElementById('HiddenMarkAsCleared').value='yes';
}
else
{
document.getElementById('HiddenMarkAsCleared').value='';
}
}
In the bill_process.php, line 200 the logic is this.
$tmp = 1;
if (isset($ar['HiddenMarkAsCleared']) && $ar['HiddenMarkAsCleared'] == 'yes') {
Logic would dictate that Yes, is being sent no matter which button is selected.
After much testing, I have learned that line 200 has no effect on skipping the processing of the claim.
(I am writing this because I have no one to talk to but myself) I have removed line 200 completely and it still marks the encounter cleared.
I checked the database before and after selecting Cancel. So, it is marked billed somewhere. The game is afoot!
This is inaccurate information. Billing is never marked 2. Maybe it should be it is not happening.
billing.inc
elseif ($status >= 0) {
$claimset .= ", status = '$status'";
if ($status > 1) {
$billset .= ", billed = 1";
if ($status == 2) $billset .= ", bill_date = NOW()";
} else {
$billset .= ", billed = 0";
}
}
$status has to be 2 all the time for it to change the billed to 1 all the time. Now, I need to backtrack and see where this is happening.