serialize a model to flat string even when a DO_NOTHING_ON_SAVE flag is set

while here:
- add FT::serialize_to_null_if_null and FT::do_not_serialize_if_null flags
This commit is contained in:
2023-02-26 18:28:16 +01:00
parent d1c86c84cf
commit 0fbd988eda
7 changed files with 114 additions and 42 deletions

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2018-2022, Tomasz Sowa
* Copyright (c) 2018-2023, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -95,7 +95,7 @@ void Model::set_has_primary_key_set(bool has_primary_key)
}
bool Model::get_has_primary_key_set()
bool Model::get_has_primary_key_set() const
{
return this->has_primary_key_set;
}
@@ -1448,7 +1448,7 @@ void Model::field_model_generate_flat_string(const wchar_t * flat_field_name, Mo
if( flat_expression )
{
if( model_env->dump_mode || field_model.save_mode == DO_INSERT_ON_SAVE || field_model.save_mode == DO_UPDATE_ON_SAVE )
if( model_env->dump_mode || field_model.save_mode != DO_DELETE_ON_SAVE )
{
field_model.model_env->model_work_mode = MORM_MODEL_WORK_MODE_GENERATING_FLAT_STRING;
flat_expression->field_model(flat_field_name, field_model, field_type, model_env);