I tried a different approach with the following result:
RESULT:
I still get a new 'Termin' post and beyond an AUTO DRAFT, so 2 posts with different IDs.
And the parent 'Karteikopf' gets deleted when submitting the form, which is kinda weird. As the form is set to 'keep displaying the form' without AJAX, the parent 'Karteikopf' page reload fails due to the mentioned deletion and shows the 404 page with the following URI: "hidden link"
FORM:
[credform]
<div style="display:none;">
[cred_field field='@karteikopf-termin.parent' select_text='--- not set ---' class='form-control' output='bootstrap' value="[wpv-post-id id='$current_page']"]
</div>
<div style="display:none;">
[cred_generic_field type='textfield' field='posttitle']
{
"required":0,
"default":"[wpv-post-title]"
}
[/cred_generic_field]
</div>
<div class="form-group">
<label for="%%FORM_ID%%_topic">[cred_i18n name='topic-label']Anlässe[/cred_i18n]</label>
[cred_generic_field type='checkboxes' field='topic']
{
"default":[],
"options":[{"value":"DIN EN ISO 9712","label":"DIN EN ISO 9712"},{"value":"FEV LKW","label":"FEV LKW"},{"value":"FEV PKW","label":"FEV PKW"},{"value":"G25","label":"G25"},{"value":"G41","label":"G41"},{"value":"G20","label":"G20"},{"value":"G37","label":"G37"},{"value":"G24","label":"G24"},{"value":"G42","label":"G42"},{"value":"G01","label":"G01"},{"value":"G02","label":"G02"},{"value":"G03","label":"G03"},{"value":"G04","label":"G04"},{"value":"G05","label":"G05"},{"value":"G06","label":"G06"},{"value":"G07","label":"G07"},{"value":"G08","label":"G08"},{"value":"G09","label":"G09"},{"value":"G10","label":"G10"},{"value":"G11","label":"G11"},{"value":"G12","label":"G12"},{"value":"G13","label":"G13"},{"value":"G14","label":"G14"},{"value":"G15","label":"G15"},{"value":"G16","label":"G16"},{"value":"G17","label":"G17"},{"value":"G18","label":"G18"},{"value":"G19","label":"G19"},{"value":"G21","label":"G21"},{"value":"G22","label":"G22"},{"value":"G23","label":"G23"},{"value":"G26","label":"G26"},{"value":"G27","label":"G27"},{"value":"G28","label":"G28"},{"value":"G29","label":"G29"},{"value":"G30","label":"G30"},{"value":"G31","label":"G31"},{"value":"G32","label":"G32"},{"value":"G33","label":"G33"},{"value":"G34","label":"G34"},{"value":"G35","label":"G35"},{"value":"G36","label":"G36"},{"value":"G38","label":"G38"},{"value":"G39","label":"G39"},{"value":"G40","label":"G40"},{"value":"G43","label":"G43"},{"value":"G44","label":"G44"},{"value":"G45","label":"G45"},{"value":"G46","label":"G46"},{"value":"ArbZG","label":"ArbZG"}]
}
[/cred_generic_field]
</div>
<div class="form-group">
<label for="%%FORM_ID%%_startdate">[cred_i18n name='startdate-label']startdate[/cred_i18n]</label>
[cred_field field='startdate' force_type='field' class='form-control' output='bootstrap']
</div>
[cred_show_group if="( $(post_title) eq '' )" mode="fade-slide"]
<div class="form-group">
<label for="%%FORM_ID%%_eterminid">[cred_i18n name='eterminid-label']eterminID[/cred_i18n]</label>
[cred_field field='eterminid' force_type='field' class='form-control' output='bootstrap' value='keine']
</div>
<div class="form-group">
<label for="%%FORM_ID%%_calid">[cred_i18n name='calid-label']calID[/cred_i18n]</label>
[cred_field field='calid' force_type='field' class='form-control' output='bootstrap' value='keine']
</div>
<div class="form-group">
<label for="%%FORM_ID%%_terminstatus">[cred_i18n name='terminstatus-label']Terminstatus[/cred_i18n]</label>
[cred_field field='terminstatus' force_type='field' class='form-control' output='bootstrap' value='Termin offen / verschoben']
</div>[/cred_show_group]
[cred_field field='form_submit' output='bootstrap' value='Absenden' class='btn btn-primary btn-lg']
[/credform]
CRED_SAVE_DATE sub-function:
function neu_probandentermin( $post_id, $form_data ){
$postinput = file_get_contents('hidden link');
parse_str($postinput, $postcheck);
$postcheck = apply_filters( 'wp_parse_str', $postcheck );
$startdate = $postcheck["wpcf-startdate"];
$startdateUNIX = $startdate[ 'datepicker' ];
$enddate = $startdateUNIX + 120;
$topic = $postcheck["topic"];
$topic1 = maybe_unserialize( $topic );
$topic2 = implode( ",", $topic1 );
$title = $postcheck["posttitle"];
update_user_meta( '1', 'datecheck', $startdateUNIX );
update_user_meta( '1', 'titlecheck', $title );
update_user_meta( '1', 'postcheck', $postcheck );
$postmetaarray = array(
'wpcf-eterminid' => 'keine',
'wpcf-calid' => 'keine',
'wpcf-startdate' => $startdateUNIX,
'wpcf-enddate' => $enddate,
'wpcf-terminstatus' => '1',
'wpcf-topic' => $topic2
);
$postarray = array(
'id' => $post_id,
'post_author' => '1',
'post_title' => $title,
'post_status' => 'private',
'post_type' => 'termin',
'meta_input' => $postmetaarray,
);
wp_update_post( $postarray, true, true );
return;
}