I have a Zap that is rather complicated but is working with a random glitch that I cannot track down.
- Gravity Forms entry to sheet entry. This is the master sheet for the next steps. Never have issues here.
- When a row of data is approved (via timestamp) in the master sheet it triggers a zap that looks up the row that was approved. This value is then used to update the corresponding rows on two other (slave) sheets.
- Problem I am randomly having is that it will delete the appropriate row on the slave sheets but then will occasionally duplicate the data immediately below. Thus, the updated data becomes totally missing from the slave sheets as it is never written to them. Sometimes a row will just disappear. Throws the sheet into disarray on succeeding approvals if duplication isn’t immediately caught and rectified. IOW, this problem can become compounding since everything relies on the same number of rows AND sort order.
Some more info.
- All three sheets have the same number of rows and the rows are in the same sort order on all of them.
- Why delete then update the row? Unless it has changed, the Update Row method will not blank a cell on update. Thus, if a value is removed at the master sheet it will not be removed on the slave sheets without first deleting the row and then updating it with the new data. Insert Row will not work here AFAIK since it will just add the row to the bottom of the sheet, throwing the sort order off.
So these are my steps:
- New or Updated Spreadsheet Row in Google Sheets (TRIGGER: Newly approved row in Master Sheet)
- Only continue if… (Approved cell exists - this cell gets reset anytime an updated Gravity Forms entry is submitted)
- Lookup Row to Delete and Update on Slave Sheets: Looks up which row was updated in the Master Sheet
- Delete Outdated Row From Slave Sheet 1: Uses Lookup Row number from step 3
- Delete Outdated Row from Slave Sheet 2: Uses Lookup Row number from step 3
- Delay After Queue in Delay by Zapier: 1 minute delay: Added in an attempt to prevent issue above.
- Update Deleted Row on Slave Sheet 1: Uses Lookup Row number from step 3
- Update Deleted Row on Slave Sheet 2: Uses Lookup Row number from step 3
Any insight would be appreciated.