Цитата:
Сообщение от
mazzy
как происходят массовые операции для связанных таблиц для "системных" ключей.
1. -
2. заполняем мастер-справочник данными
3. записываем в БД(!), получаем сгенеренный системой recID
4. заполняем подчиненные справочники данными
5. заполняем в подчиненных справочниках recID
6. записываем данные из подчиненного справочника (уже неважно как)
Странно почему программисты в этой схеме не сделали так
1. -
2. заполняем мастер-справочник данными
// 3. записываем в БД(!), получаем сгенеренный системой recID
3. Генерируем в буфере мастер-справочника RecId, (можно например для этого сделать метод на Common)
4. заполняем подчиненные справочники данными
5. заполняем в подчиненных справочниках RefRecID на мастер-справочник
6. записываем данные из подчиненного справочника (уже неважно как, можно и по старинке)
По удобству использования все то же самое как и раньше для естественных ключей.
Плюс можно сохранить логику вставки записей - сперва строки, потом шапка, на которую эти строки ссылаются (так много где сделано в ax3-2009) - это может быть полезно в некоторых случаях, когда какой-то подписчик или интеграция с внешней системой отбирает документы по шапкам и хватают еще до конца не сгенерированный документ, так как шапка уже вставилась и куда то вовне уходит часть документа.