imxored ревизий этого фрагмента . К ревизии
1 file changed, 1 insertion, 3 deletions
DATAREON.md
| @@ -4,9 +4,7 @@ | |||
| 4 | 4 | - строка | |
| 5 | 5 | - число | |
| 6 | 6 | - булево | |
| 7 | - | ||
| 8 | - | ||
| 9 | - | Все остальное нужно обрабатывать | |
| 7 | + | > Все остальное нужно обрабатывать! | |
| 10 | 8 | # Методы схем | |
| 11 | 9 | ## Получение свойст | |
| 12 | 10 | ``` C+ | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 2 insertions
DATAREON.md
| @@ -4,6 +4,8 @@ | |||
| 4 | 4 | - строка | |
| 5 | 5 | - число | |
| 6 | 6 | - булево | |
| 7 | + | ||
| 8 | + | ||
| 7 | 9 | Все остальное нужно обрабатывать | |
| 8 | 10 | # Методы схем | |
| 9 | 11 | ## Получение свойст | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 1 insertion, 1 deletion
DATAREON.md
| @@ -3,7 +3,7 @@ | |||
| 3 | 3 | Из xdto пакета автоматически распознаются типы: | |
| 4 | 4 | - строка | |
| 5 | 5 | - число | |
| 6 | - | - булево | |
| 6 | + | - булево | |
| 7 | 7 | Все остальное нужно обрабатывать | |
| 8 | 8 | # Методы схем | |
| 9 | 9 | ## Получение свойст | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 7 insertions
DATAREON.md
| @@ -1,3 +1,10 @@ | |||
| 1 | + | # Универсальные функции | |
| 2 | + | ## Общее | |
| 3 | + | Из xdto пакета автоматически распознаются типы: | |
| 4 | + | - строка | |
| 5 | + | - число | |
| 6 | + | - булево | |
| 7 | + | Все остальное нужно обрабатывать | |
| 1 | 8 | # Методы схем | |
| 2 | 9 | ## Получение свойст | |
| 3 | 10 | ``` C+ | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 13 insertions
DATAREON.md
| @@ -99,4 +99,17 @@ foreach (var Element in ДокументИмпПриемкаСтроительн | |||
| 99 | 99 | ``` | |
| 100 | 100 | ЗагружаемыйОбъект = Контекст.ЗаписываемыйОбъект; | |
| 101 | 101 | ПреобразованнаяСтруктура = Контекст.ПреобразованныеДанные[0]; | |
| 102 | + | ``` | |
| 103 | + | ### Поиск значений | |
| 104 | + | ``` | |
| 105 | + | ПараметрыПоиска = ОбщегоНазначения.СкопироватьРекурсивно(Контекст); | |
| 106 | + | ||
| 107 | + | // СчетКапВложенийБУ | |
| 108 | + | ИмяПоляИсточник = "СчетЗатрат"; | |
| 109 | + | ИмяПоляПриемник = "СчетКапВложенийБУ"; | |
| 110 | + | ОписаниеТипа = Новый ОписаниеТипов("ПланСчетовСсылка.Хозрасчетный"); | |
| 111 | + | ЗначениеСвойства = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаУслуги, ИмяПоляИсточник); | |
| 112 | + | ЗначениеСвойстваВ1с = ВыполнитьФункцию("ЗначениеРеквизита", ЗначениеСвойства, ОписаниеТипа, ПараметрыПоиска, ИмяПоляИсточник); | |
| 113 | + | СтрокаЗатраты[ИмяПоляПриемник] = ЗначениеСвойстваВ1с; | |
| 114 | + | ||
| 102 | 115 | ``` | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 5 insertions
DATAREON.md
| @@ -95,3 +95,8 @@ foreach (var Element in ДокументИмпПриемкаСтроительн | |||
| 95 | 95 | Контекст.Вставить("РежимЗаписи", РежимЗаписиДокумента.Проведение); | |
| 96 | 96 | КонецЕсли; | |
| 97 | 97 | ``` | |
| 98 | + | ### Удобное встраивание вместо БА | |
| 99 | + | ``` | |
| 100 | + | ЗагружаемыйОбъект = Контекст.ЗаписываемыйОбъект; | |
| 101 | + | ПреобразованнаяСтруктура = Контекст.ПреобразованныеДанные[0]; | |
| 102 | + | ``` | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 8 insertions, 1 deletion
DATAREON.md
| @@ -87,4 +87,11 @@ foreach (var Element in ДокументИмпПриемкаСтроительн | |||
| 87 | 87 | ВыполнитьФункцию("ОбработатьИсключениеПриЗаписиОбъекта", Контекст); | |
| 88 | 88 | ||
| 89 | 89 | КонецПопытки; | |
| 90 | - | ``` | |
| 90 | + | ``` | |
| 91 | + | ## Расширение функционала универсальных функций | |
| 92 | + | ### Сначала документ записывается, затем проводится если был проведен | |
| 93 | + | ``` | |
| 94 | + | Если ЗагружаемыйОбъект.Проведен Тогда | |
| 95 | + | Контекст.Вставить("РежимЗаписи", РежимЗаписиДокумента.Проведение); | |
| 96 | + | КонецЕсли; | |
| 97 | + | ``` | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 29 insertions
DATAREON.md
| @@ -58,4 +58,33 @@ foreach (var Element in ДокументИмпПриемкаСтроительн | |||
| 58 | 58 | var NewElement = ВтДокументПоступлениеТоваровУслуг.ЗачетАвансов.AddElement(); | |
| 59 | 59 | NewElement.СуммаЗачета = Element.СуммаЗачета; | |
| 60 | 60 | } | |
| 61 | + | ``` | |
| 62 | + | # Обработчики | |
| 63 | + | ## Эталонный отправки из платформ в 1с | |
| 64 | + | ``` | |
| 65 | + | Попытка | |
| 66 | + | НачатьТранзакцию(); | |
| 67 | + | ||
| 68 | + | Контекст = Новый Структура; | |
| 69 | + | Контекст.Вставить("ЭтотОбъект", ЭтотОбъект); | |
| 70 | + | ||
| 71 | + | ВыполнитьФункцию("ИнициализироватьКонтекстЗаписиОбъекта", Контекст); | |
| 72 | + | ||
| 73 | + | ВыполнитьФункцию("НайтиСоздатьОбъект", Контекст); | |
| 74 | + | ||
| 75 | + | ВыполнитьФункцию("ЗаполнитьОбъект", Контекст); | |
| 76 | + | ||
| 77 | + | ВыполнитьФункцию("ЗаписатьОбъект", Контекст); | |
| 78 | + | ||
| 79 | + | ЗафиксироватьТранзакцию(); | |
| 80 | + | ||
| 81 | + | Исключение | |
| 82 | + | Если ТранзакцияАктивна() Тогда | |
| 83 | + | ОтменитьТранзакцию(); | |
| 84 | + | КонецЕсли; | |
| 85 | + | ||
| 86 | + | Контекст.Вставить("ИнформацияОбОшибке", ИнформацияОбОшибке()); | |
| 87 | + | ВыполнитьФункцию("ОбработатьИсключениеПриЗаписиОбъекта", Контекст); | |
| 88 | + | ||
| 89 | + | КонецПопытки; | |
| 61 | 90 | ``` | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 53 insertions
DATAREON.md
| @@ -5,4 +5,57 @@ | |||
| 5 | 5 | ДоговорУТ = (bool) InitMessage.Properties.GetProperty("ДоговорУТ").GetValue(); | |
| 6 | 6 | ДоговорДО = (bool) InitMessage.Properties.GetProperty("ДоговорДО").GetValue(); | |
| 7 | 7 | ДоговорБСО = (bool) InitMessage.Properties.GetProperty("ДоговорБСО").GetValue(); | |
| 8 | + | ``` | |
| 9 | + | ||
| 10 | + | # Трансформации | |
| 11 | + | ## Пример | |
| 12 | + | ``` | |
| 13 | + | ВтДокументПоступлениеТоваровУслуг.Дата = ДокументИмпПриемкаСтроительныхРаботУслуг.Дата; | |
| 14 | + | ВтДокументПоступлениеТоваровУслуг.ПометкаУдаления = ДокументИмпПриемкаСтроительныхРаботУслуг.ПометкаУдаления; | |
| 15 | + | ВтДокументПоступлениеТоваровУслуг.Проведен = ДокументИмпПриемкаСтроительныхРаботУслуг.Проведен; | |
| 16 | + | ВтДокументПоступлениеТоваровУслуг.ДатаВходящегоДокумента = ДокументИмпПриемкаСтроительныхРаботУслуг.ДатаВходящегоДокумента; | |
| 17 | + | ВтДокументПоступлениеТоваровУслуг.Комментарий = ДокументИмпПриемкаСтроительныхРаботУслуг.Комментарий; | |
| 18 | + | ВтДокументПоступлениеТоваровУслуг.КратностьВзаиморасчетов = ДокументИмпПриемкаСтроительныхРаботУслуг.КратностьВзаиморасчетов; | |
| 19 | + | ВтДокументПоступлениеТоваровУслуг.КурсВзаиморасчетов = ДокументИмпПриемкаСтроительныхРаботУслуг.КурсВзаиморасчетов; | |
| 20 | + | ВтДокументПоступлениеТоваровУслуг.НДСВключенВСтоимость = ДокументИмпПриемкаСтроительныхРаботУслуг.НДСВключенВСтоимость; | |
| 21 | + | ВтДокументПоступлениеТоваровУслуг.НомерВходящегоДокумента = ДокументИмпПриемкаСтроительныхРаботУслуг.НомерВходящегоДокумента; | |
| 22 | + | ВтДокументПоступлениеТоваровУслуг.СуммаВключаетНДС = ДокументИмпПриемкаСтроительныхРаботУслуг.СуммаВключаетНДС; | |
| 23 | + | ВтДокументПоступлениеТоваровУслуг.РучнаяКорректировка = ДокументИмпПриемкаСтроительныхРаботУслуг.РучнаяКорректировка; | |
| 24 | + | ВтДокументПоступлениеТоваровУслуг.ЕстьРасхождения = ДокументИмпПриемкаСтроительныхРаботУслуг.ЕстьРасхождения; | |
| 25 | + | ВтДокументПоступлениеТоваровУслуг.СуммаВключаетНДС = ДокументИмпПриемкаСтроительныхРаботУслуг.СуммаВключаетНДС; | |
| 26 | + | ВтДокументПоступлениеТоваровУслуг.ЭтоУниверсальныйДокумент = ДокументИмпПриемкаСтроительныхРаботУслуг.ЭтоУниверсальныйДокумент; | |
| 27 | + | ВтДокументПоступлениеТоваровУслуг.СуммаГарантийногоУдержания = ДокументИмпПриемкаСтроительныхРаботУслуг.СуммаГарантийногоУдержания; | |
| 28 | + | ВтДокументПоступлениеТоваровУслуг.Д_СуммаЗачетенныхАвансов = ДокументИмпПриемкаСтроительныхРаботУслуг.Д_СуммаЗачетенныхАвансов; | |
| 29 | + | ВтДокументПоступлениеТоваровУслуг.Д_СуммаВозмещаемыхУслуг_Общая = ДокументИмпПриемкаСтроительныхРаботУслуг.Д_СуммаВозмещаемыхУслуг; | |
| 30 | + | ||
| 31 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.ВалютаДокумента, ВтДокументПоступлениеТоваровУслуг.ВалютаДокумента); | |
| 32 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.ДоговорКонтрагента, ВтДокументПоступлениеТоваровУслуг.ДоговорКонтрагента); | |
| 33 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.Контрагент, ВтДокументПоступлениеТоваровУслуг.Контрагент); | |
| 34 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.Организация, ВтДокументПоступлениеТоваровУслуг.Организация); | |
| 35 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.Ответственный, ВтДокументПоступлениеТоваровУслуг.Ответственный); | |
| 36 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.СчетУчетаРасчетовПоАвансам, ВтДокументПоступлениеТоваровУслуг.СчетУчетаРасчетовПоАвансам); | |
| 37 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.СчетУчетаРасчетовСКонтрагентом, ВтДокументПоступлениеТоваровУслуг.СчетУчетаРасчетовСКонтрагентом); | |
| 38 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.Грузоотправитель, ВтДокументПоступлениеТоваровУслуг.Грузоотправитель); | |
| 39 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.Грузополучатель, ВтДокументПоступлениеТоваровУслуг.Грузополучатель); | |
| 40 | + | CommonFunctions.CopyMatchingProperties(ДокументИмпПриемкаСтроительныхРаботУслуг.СчетУчетаРасчетовПоТаре, ВтДокументПоступлениеТоваровУслуг.СчетУчетаРасчетовПоТаре); | |
| 41 | + | ||
| 42 | + | foreach (var Element in ДокументИмпПриемкаСтроительныхРаботУслуг.Услуги) { | |
| 43 | + | var NewElement = ВтДокументПоступлениеТоваровУслуг.Услуги.AddElement(); | |
| 44 | + | ||
| 45 | + | CommonFunctions.CopyMatchingProperties(Element, NewElement); | |
| 46 | + | ||
| 47 | + | CommonFunctions.CopyMatchingProperties(Element.СчетЗатрат, NewElement.СчетЗатрат); | |
| 48 | + | CommonFunctions.CopyMatchingProperties(Element.СчетЗатратНУ, NewElement.СчетЗатратНУ); | |
| 49 | + | CommonFunctions.CopyMatchingProperties(Element.Субконто1, NewElement.Субконто1); | |
| 50 | + | CommonFunctions.CopyMatchingProperties(Element.Субконто2, NewElement.Субконто2); | |
| 51 | + | CommonFunctions.CopyMatchingProperties(Element.Субконто3, NewElement.Субконто3); | |
| 52 | + | CommonFunctions.CopyMatchingProperties(Element.СчетУчетаНДС, NewElement.СчетУчетаНДС); | |
| 53 | + | ||
| 54 | + | ||
| 55 | + | } | |
| 56 | + | ||
| 57 | + | foreach (var Element in ДокументИмпПриемкаСтроительныхРаботУслуг.ЗачетАвансов) { | |
| 58 | + | var NewElement = ВтДокументПоступлениеТоваровУслуг.ЗачетАвансов.AddElement(); | |
| 59 | + | NewElement.СуммаЗачета = Element.СуммаЗачета; | |
| 60 | + | } | |
| 8 | 61 | ``` | |
imxored ревизий этого фрагмента . К ревизии
1 file changed, 3 insertions, 1 deletion
DATAREON.md
| @@ -1,6 +1,8 @@ | |||
| 1 | 1 | # Методы схем | |
| 2 | 2 | ## Получение свойст | |
| 3 | + | ``` C+ | |
| 3 | 4 | ДоговорЕРП = (bool) InitMessage.Properties.GetProperty("ДоговорЕРП").GetValue(); | |
| 4 | 5 | ДоговорУТ = (bool) InitMessage.Properties.GetProperty("ДоговорУТ").GetValue(); | |
| 5 | 6 | ДоговорДО = (bool) InitMessage.Properties.GetProperty("ДоговорДО").GetValue(); | |
| 6 | - | ДоговорБСО = (bool) InitMessage.Properties.GetProperty("ДоговорБСО").GetValue(); | |
| 7 | + | ДоговорБСО = (bool) InitMessage.Properties.GetProperty("ДоговорБСО").GetValue(); | |
| 8 | + | ``` | |