Цитата:
Сообщение от
zZ_TOP_Zz
я бы для универсальности добавил бы TableId на вход для более универсального алгоритма
zZ_TOP_Zz, готово! Вот универсальный метод, его можно применять к любой таблице и любой записи
X++:
static void joinFileInternet(TableId _tableId, RecId _refRecId, FileName _fileName ,DataAreaId _id, str _fileType)
{
DocuRef docuRef;
DocuType docuType;
DocuValue docuValue;
FileName fn;
FilePath fp;
FileType ft;
;
docuType = DocuType::find(ITSMParameters::find().DocuTypeId, false);
ttsbegin;
[fn, ft, fp] = Docu::splitFilename(_filename);
docuValue.FileName = fn;
docuValue.FileType = _fileType;
docuValue.Path = fp;
docuValue.Name = fn;
docuValue.insert();
ttscommit;
ttsbegin;
docuRef.RefTableId = _tableId; //id таблицы с записью для добавления вложения
docuRef.RefRecId = _refRecId; //recId записи, к кот. прикрепляется файл
docuRef.Name = _fileName;
docuRef.TypeId = docuType.TypeId;
docuRef.RefCompanyId = _id;
docuref.ValueRecId = docuValue.RecId;
docuRef.insert();
ttscommit;
}