Честно сказать, совершенно не понимаю зачем для простых действий надо изобретать велосипед
X++:
CustVendTable custVendTable;
custTable custTable;
;
select firstonly custTable;
custTable.overwriteSystemfields(true);
custTable.(fieldnum(custTable, createdDate)) = systemdateget();
custVendTable = custTable;
info("Поле в таблице :" + custTable.CustGroup);
info("По номеру поля в Map'е :" + custVendTable.(fieldNum(CustVendTable,groupId)));
info("По имени поля в Map'е :" + custVendTable.groupId);
info(date2str(custVendTable.createdDate, 123, 2, 2, 2, 2, 4));
switch (custVendTable.TableId)
{
case tableNum(CustTable):
info(tableStr(CustTable));
break;
case tableNum(VendTable):
info(tableStr(VendTable));
break;
}