Пример использования режима отложенных изменений
В следующем примере в текущей сессии userSession
мы получаем данные карточки. Активировав режим отложенных изменений для карточки, мы проводим изменение секции MainInfo
, после чего отключаем режим отложенных изменений.
CardData cardData = userSession.CardManager.GetCardData(new System.Guid("идентификатор_карточки")); (1)
if (!cardData.InUpdate) cardData.BeginUpdate(); (2)
try
{
SectionData sectionData = cardData.Sections[card.Type.Sections["MainInfo"].Id]; (3)
RowData rowData = sectionData.FirstRow; (4)
rowData["Author"] = "Иванов";
rowData["Number"] = 11;
rowData["CreationDate"] = DateTime.Now; (5)
cardData.EndUpdate(); (6)
}
catch(Exception ex)
{
if (cardData.InUpdate) cardData.CancelUpdate(); (7)
}
1 | Получение с сервера данных карточки с известным идентификатором. |
2 | Включение режима отложенных изменений. |
3 | Получение данных секции с именем MainInfo . |
4 | Получение первой строки секции, если строки нет — она будет создана. |
5 | Запись значений в поля. |
6 | Выключение режима отложенных изменений, передача всех изменений на сервер. |
7 | При возникновении ошибки — отмена всех изменений. |