Start a new topic

Skip $0 Gift Batch entries but process rest of row

We are using IOM and the LO TR registration connector to import TR registrations.  As part of the standard process a RE Gift Batch is created to process gifts/donations.

There are times when the registration/gift amount is $0.

I know we can skip rows based on $0 reg/gifts however in skipping we also skip the registration data.

Is there a way to process the actual registration data however NOT add an entry to the gift batch if the $ amount is $0.

Thanks


Eagerly waiting for this reply. Especially because we have records with multiple $0 gifts, because every time someone changes any info in their record, they're brought into a batch with yet another $0 gift. Thank you for asking the question!

Karen, while we are waiting I will also log a ticket with Omatic Support to see if we can get a quicker response.  Thanks, Dennis

Hi Dennis and Karen,

Currently the only way to do this is through the API. If you are importing to batch and any gift fields are populated IOM will try to create a gift in the batch using the data it has. However if you blank out all gift fields for zero dollar gifts it will not try to do this.

The code is very simple to write and would look something like:

If Import.Fields.GetByName("Payment - Amount").Value = ""
Import.Fields.GetByExcelName("D").Value = ""
Import.Fields.GetByExcelName("E").Value = ""
Import.Fields.GetByExcelName("F").Value = ""
End If


In this example D, E, and F are all gift fields that you have mapped that you would need blanked out (in a real world scenario there would likely be a lot more fields). I wrote this based upon gift amount coming in as blank through the connector, which if I remember correctly it does. If it comes in as 0 or 0.00 then you'd need to adjust accordingly.
John, thanks for the response. We are already blanking many gift fields but, obviously, not all assuming the above is correct. I will look for any others which may not already be blanked based on a $0 gift and will report back to this forum for others to see. Thanks, Dennis
All, we were successful in restricting $0 gifts from being added to the Gift Batch – As John indicated, blanking all our mapped gift batch fields if the gift amount worked. For reference below is the actual code we used – please realize each of the ‘getbyexcelname’ values corresponds to a mapped field related to a gift(ex. cc#, amount, receipt, etc). Please feel free to comment if you believe there is a better way to achieve the same desired result.

'this custom section is used to NOT ADD $0 GIFTS TO A BATCH
'gdate - temp variable to hold the value of the gift amount
Dim gdate As String

'get the gift amount
gdate=import.fields.getbyexcelname("IZ").value

'is the gift amount $0 or blank then blank all of the gift values
If (gdate="0.00") Or (gdate="") Then

'this blanks all of the known gift related values which we are mapping
import.fields.getbyexcelname("E").value=""
import.fields.getbyexcelname("IZ").value=""
import.fields.getbyexcelname("JA").value=""
import.fields.getbyexcelname("JU").value=""
import.fields.getbyexcelname("JX").value=""
import.fields.getbyexcelname("JZ").value=""
import.fields.getbyexcelname("KA").value=""
import.fields.getbyexcelname("KB").value=""
import.fields.getbyexcelname("KH").value=""
import.fields.getbyexcelname("KY").value=""
import.fields.getbyexcelname("MS").value=""
import.fields.getbyexcelname("NR").value=""
import.fields.getbyexcelname("NS").value=""
import.fields.getbyexcelname("NT").value=""
import.fields.getbyexcelname("NU").value=""
import.fields.getbyexcelname("NV").value=""
import.fields.getbyexcelname("NW").value=""
import.fields.getbyexcelname("NX").value=""
import.fields.getbyexcelname("NY").value=""
import.fields.getbyexcelname("NZ").value=""

'end if gdate =$0
End if

While this is not exactly what you are looking for, when we import the data and there is no gift associated, required fields such as Origin are not filled in. This way when we commit the batch, they are all thrown into an exception file, which is then deleted. Not the best plan, but not the worst either.
Hi Dennis

This is how I've ended up doing it. Seems to work for my import.

Dim intCounter As Integer
For intCounter = 0 To import.fields.Count-1
If import.fields.getbyindex(intCounter).RecordType = 13 Then import.fields.getbyindex(intCounter).Value= ""
Next intCounter
Nick, thanks for the alternate solution.
Login or Signup to post a comment