Hi Guys

I have a cCJGrid with invoices. Traditionally, they select one invoice, click to process and the PDF gets created G/L updated etc etc.

Now they want checkboxes in a column, and then when the process button is done, all selected invoices will be processed.

However, for some invoices a validation need to be done first.

So what I want to do is along the lines of:
Code:
Procedure OnSelectedRowDataChanged String sOldValue String sValue
    String sArrowId sGLCode
    Forward Send OnSelectedRowDataChanged sOldValue sValue
    If (sValue = (psCheckboxTrue(Self))) Begin
        Get SelectedRowValue of (oArrowIDGridColumn(oInvoiceList(Self)))     to sArrowId
        Get SelectedRowValue of (oGLCodeGridColumn(oInvoiceList(Self)))      to sGLCode
        Showln "sArrowId=" sArrowId " sGLCode=" sGLCode
        If (sArrowId = '' or sGLCode  = '') Begin
            If (sArrowId = '') Send Stop_box 'Cannot Create an Invoice with BLANK Arrow Id, use "Add Arrow Id" buton.'
            If (sGLCode  = '') Send Stop_box 'Cannot Create an Invoice with BLANK GL Code, please contact HelpDesk.'
            Send UpdateCurrentValue (psCheckboxFalse(Self))
        End
    End
End_Procedure
However, the runtime is really not happy that I change the value from within the event... as I get a 'assert: OnSelectedRowDataChanged recursion'.

How can I get the required functionality, without the error?

Cheers
Marco