Hi @wpmudevsupport12 , @jpgoem
I dug into this one out of curiosity and found the root cause, in case it’s useful for your dev team.
Root cause: In library/modules/custom-forms/front/front-action.php (Forminator 1.57.2), Forminator_CForm_Front_Action::set_field_data_array() only saves the -copies entry meta, which records how many rows a repeater group has — when the submission is a draft. For a completed submission, that value only exists in memory for the original request and is never written to the entry meta table.
When you click Resend Notification Email, the resend path rebuilds the submission data purely from stored meta (recreate_prepared_data()). Since -copies was never saved, the visibility engine can’t tell that row 2+ of the repeater exists, so any field depending on those rows, like a Calculation field using the {field-*} wildcard to sum across the group, gets treated as unresolved and silently dropped from the resent email. A single-row group never needs -copies data at all, which is exactly why it only reproduces with 2+ rows.
Suggested fix: persist the actual row-index array for real submissions too, not just drafts:
// in set_field_data_array(), right after the existing if ( self::$is_draft ) { ... } block:
} elseif ( ‘group’ === $field_type && ! empty( self::$prepared_data[ $element_id . ‘-copies’ ] ) ) {
// Persist the actual repeated-row indexes for completed submissions too, not only drafts.
// Without this, resend_notification_email()’s recreate_prepared_data() has no way to know
// how many rows the repeater had, so check_fields_visibility() never marks fields in rows
// beyond the first as visible – breaking any calculation (e.g. {field-*}) or other field
// that depends on them, once the group has 2+ rows.
self::$info[‘field_data_array’][] = array(
‘name’ => $element_id . ‘-copies’,
‘value’ => self::$prepared_data[ $element_id . ‘-copies’ ],
);
}
That elseif sits right after the closing brace of the existing if ( self::$is_draft ) {…} block, before the // if certain field types – go to next field. line.
Tested locally: reproduced with the exact form export from this thread (2-row repeater, {number-1-*} calculation). Before the change, resending an entry with 2 rows drops the Calculations line entirely; a fresh submission made after the change resends with the calculated value intact, matching the original notification.
See the screenshot here: https://prnt.sc/Wi8Jcv5zuaDp
Thank You