CashBox for Salesforce
Troubleshooting CashBox apps in Salesforce
Monitoring Import/Export Jobs
Two custom tabs have been added to help you monitor continuous sync jobs:
- CashBox Import Logs
- CashBox Export Logs
If you notice any discrepancies between CashBox and Salesforce data, you can reference the import/export tabs and backtrack in time to see if there are any import errors. You can then refresh the account or purchase to perform a targeted import.
Note that all logs are retained for only seven days in order to avoid taxing your Salesforce org with data.
Import Logs is a custom tab where you can track all import logs. A record is created for each page of each import job. When the import is running in continuous/auto mode, you can track the sequence of import jobs and verify that all data makes it into Salesforce. There is an error flag on which you can build a list view and an error message for each of the import log records. If you run a manual import job, the import log also tracks all records.
This custom tab tracks all export logs, including updates to an account or payment method for CashBox (Basic). For CashBox (Premium), this includes all customer care functionality, such as accounts, payment methods, purchases, and credits.
At any time, if your CashBox data does not conform to your Salesforce validation (as of release 14.0), all import problems due to the Salesforce database or validation issues are placed in a retry queue. Each failed record is logged with its Vindicia ID (accessible from the CashBox Admin tab > View Import Errors) and the reason for failure. You can then correct the data in CashBox or adjust the validation constraints in Salesforce, and either manually run a re-import for the failed record or, if it is not urgent, wait for the nightly retry job to make another import attempt for all failed records.
Stop Scheduled Jobs
When you start the auto-scheduled data import with the Start Data Import button on the CashBox Admin tab, the following jobs are scheduled, as shown in CashBox Scheduled Jobs, below.
- Data Import Bulk Exception Cleanup Scheduler: Runs daily and deletes exceptions logs older than seven days
- Data Import Exception Digest Job
- Data Import Log Cleanup Scheduler: Deletes all import logs older than seven days
- Vindicia Data Import Scheduler: Controls the continuous data import sequence, described above in the Importing Data, Automatic and Continuous section
If you need to stop the current import job or any of the other jobs described here, click Del in the Custom Settings > Data Import Log.
Disabling CashBox Triggers
When an additional custom code is being deployed in your Salesforce organization, you might need to disarm CashBox triggers for certain test classes. During debug or test mode, you can disable the triggers for CashBox and get the rest of your test coverage to an acceptable point. Be sure to enable all CashBox triggers before launching and resuming application data integration.
Data Import Catch-up
Under the CashBox Admin tab, a section called Data Import Shortcuts enables you to import specific object data manually. For the following objects, all available records from CashBox will be imported into Salesforce:
- Billing plans
- Rate plans
For the following objects, a from/to timestamp from Custom Settings > Import Log is used:
This manual import of data is most useful during an initial data import that requires manual interaction, or when your integration has been turned off and you are performing a catch-up.
Manual Data Import
In cases where manual import is needed, the administrator can control the data import by stopping jobs currently scheduled and restarting them. This is useful when a retroactive import of changes is desired, especially if an existing CashBox customer is new to Salesforce and is instantiating the applications for the first time. Use the following procedure to manually control data import:
- Navigate to Setup > Administration Setup > Monitoring > Scheduled Jobs.
- Delete the scheduled jobs by clicking the Del link to the left of each scheduled job in the Action column, then Confirm.
- Typically, there will be two or three jobs running—occasionally some are one-off jobs to fetch rated usage—but any job related to the CashBox applications can be safely deleted and restarted. But in this case, target:
- VindiciaDataImportScheduler (might have a V# at the end if versioned)
- Reset the start and end dates of your import:
- Navigate to Setup > App Setup > Develop > Custom Settings > [Manage] Data Import Log > [Edit] Next Start
- Edit the Next Extract Start value to a time and date before you made the change. The further back you go, the longer the import will take—and the greater the risk of SFDC failing due to enforced timeouts.
Note: SFDC does not allow jobs that take more than two minutes or return more than 6 MB of data.
To avoid these SFDC limitations, keep the Page Size setting at 100 or lower. If you must pull data from a long time ago, use the optional Next Extract End and manually move the import window until the end date, or use Max Import Period (Hours) to limit your import range, in which case the import window will automatically move to the next and will keep the maximum period fixed. If you use the Max Import Period (Hours) setting, no manual intervention is needed; the import job will automatically move to the next window until it reaches the current date and time. If you want to leverage the Max Import Period (Hours), the recommended value varies depending on the volume of data you expect to import. You can start with a max window of one week, and adjust it to a higher or lower number depending on whether the import is successful or times out.
- Restart the full import jobs by navigating to the CashBox Admin tab, and click the Start Data Import button at the bottom.
- (Optional) Monitor the jobs and import logs.
You can use the CashBox Import Log tab to watch each import log. Each log is recorded at completion. There may be a short delay before you see the new entries.