![]() |
|
первая проводка нет записи в регистр вторая проводка записывает | ☑ | ||
---|---|---|---|---|
0
igoza
18.06.13
✎
19:08
|
первая проводка нет записи в регистр вторая проводка записывает, отмень проводку, и поновой так же, уже и скопировал и исправил код из других похожих документов, так же
/////////////////////////////////////////////////////////////////////////////// // ФОРМИРОВАНИЕ СТРУКТУРЫ ДАННЫХ // Формируется и проверяется шапка документа. // // Параметры: // прРежимПроведения - РежимПроведенияДокумента - режим проведения документа // (Оперативный/Неоперативный). // прОтказ - Булево - флаг отказа в проведении. // // Возвращаемое значение: // Структура - подготовленная структура шапки документа с параметрами. // Функция СформироватьСтруктуруШапки(прРежимПроведениия, прОтказ) СтруктураШапкиДокумента = обСформироватьСтруктуруШапкиДокумента(Ссылка, прРежимПроведениия); // Проверим правильность заполнения шапки документа. ПроверитьЗаполнениеШапки(СтруктураШапкиДокумента, прОтказ); Возврат СтруктураШапкиДокумента; КонецФункции // СформироватьСтруктуруШапки() // Процедура формирования таблицы значений по табличной части ТМЦ. // // Параметры: // прСтруктураШапкиДокумента - Структура - подготовленная структура шапки // документа с параметрами. // прТаблицаТМЦ - Неопределено. // прОтказ - Булево - флаг отказа в проведении. // Процедура СформироватьТаблицуПоЗаданиюПрих(прСтруктураШапкиДокумента, прЗадание, прОтказ) // Проверить заполнение ТЧ "Задание". ПроверитьЗаполнениеТабличнойЧастиЗадание(прСтруктураШапкиДокумента, прОтказ); Если прОтказ Тогда Возврат; КонецЕсли; //прЗадание = обКопироватьСтруктуруТаблицыЗначений(Задание); //обЗагрузитьВТаблицуЗначений(Задание, прЗадание); прЗадание = Новый ТаблицаЗначений; прЗадание.Колонки.Добавить("Комната"); прЗадание.Колонки.Добавить("РабочиеМеста"); прЗадание.Колонки.Добавить("Сотрудник"); прЗадание.Колонки.Добавить("СистемныйБлок"); прЗадание.Колонки.Добавить("Телефон"); прЗадание.Колонки.Добавить("IP"); прЗадание.Колонки.Добавить("MAC"); прЗадание.Колонки.Добавить("Стоимость"); Строка = прЗадание.Добавить(); Строка.Комната = РабочееМесто.Комната; Строка.РабочиеМеста = РабочееМесто; Строка.Сотрудник = Сотрудник; Строка.СистемныйБлок = СистемныйБлок; Строка.Телефон = Телефон; Строка.IP = IP; Строка.MAC = MAC; Строка.Стоимость = 0; КонецПроцедуры // СформироватьТаблицуПоЗаданию() /////////////////////////////////////////////////////////////////////////////// // ПРОЦЕДУРЫ ПРОВЕРКИ КОРРЕКТНОСТИ ДАННЫХ // Проверяет правильность заполнения шапки документа. // Если какой-то из реквизтов шапки, влияющий на проведение не заполнен или // заполнен не корректно, то выставляется флаг отказа в проведении. // Проверяется также правильность заполнения реквизитов ссылочных полей документа. // Проверка выполняется по объекту и по выборке из результата запроса по шапке. // // Параметры: // прСтруктураШапкиДокумента - выборка из результата запроса // по шапке документа. // прОтказ - Булево - флаг отказа в проведении. // Процедура ПроверитьЗаполнениеШапки(прСтруктураШапкиДокумента, прОтказ) // Укажем, что надо проверить. СтруктураОбязательныхПолей = Новый Структура("Дата"); // Теперь позовем общую процедуру проверки. обПроверитьЗаполнениеШапкиДокумента(ЭтотОбъект, СтруктураОбязательныхПолей, прОтказ, прСтруктураШапкиДокумента.Заголовок); КонецПроцедуры // ПроверитьЗаполнениеШапки() // Проверяет правильность заполнения строк табличной части ТМЦ. // // Параметры: // прСтруктураШапкиДокумента - выборка из результата запроса // по шапке документа. // прОтказ - Булево - флаг отказа в проведении. // Процедура ПроверитьЗаполнениеТабличнойЧастиЗадание(прСтруктураШапкиДокумента, прОтказ) // Укажем, что надо проверить. СтруктураОбязательныхПолей = Новый Структура("ШтрихКод, Откуда, Комплектующие, Куда"); // Теперь позовем общую процедуру проверки. обПроверитьЗаполнениеТабличнойЧасти(ЭтотОбъект, "Номенклатура", СтруктураОбязательныхПолей, прОтказ, прСтруктураШапкиДокумента.Заголовок); КонецПроцедуры // ПроверитьЗаполнениеТабличнойЧастиЗадание() /////////////////////////////////////////////////////////////////////////////// // ФОРМИРОВАНИЕ ДВИЖЕНИЙ ДОКУМЕНТА // По результату запроса по шапке документа формируем движения по регистрам. // // Параметры: // прСтруктураШапкиДокумента - Структура - подготовленная структура шапки // документа с параметрами. // прТаблицаТМЦ - ТаблицаЗначений - таблица значений, сформированная // по ТЧ ТМЦ. // прОтказ - Булево - флаг отказа в проведении. // Процедура ДвиженияПоРегистрамПостуление(прСтруктураШапкиДокумента, прТаблицаЗадания, прОтказ) //Движения по регистру СкладКомплектующих ДвиженияПоРегиструСкладКомплектующихПоступление(прТаблицаЗадания, прОтказ); КонецПроцедуры Процедура ДвиженияПоРегиструСкладКомплектующихПоступление(прТаблицаЗадания, прОтказ) НаборДвижений = Движения.РабочиеМеста; ТаблицаДвижений = НаборДвижений.Выгрузить(); ТаблицаДвижений.Очистить(); // Заполним таблицу движений. обЗагрузитьВТаблицуЗначений(прТаблицаЗадания, ТаблицаДвижений); НаборДвижений.мПериод = Дата; НаборДвижений.мТаблицаДвижений = ТаблицаДвижений; Движения.РабочиеМеста.ВыполнитьПриход(); КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// // ОБРАБОТЧИКИ СОБЫТИЙ // Регистр сведений ШтрихКоды заполнение //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// // Регистр сведений ШтрихКоды заполнение Процедура ОбработкаПроведения(Отказ, РежимПроведения) Перем ТаблицаПоЗаданию; ОбработкаУдаленияПроведения(Отказ); //Удалим движения по регистрам накопления обУдалитьДвиженияДокумента(ЭтотОбъект, Отказ); СтруктураШапкиДокумента = СформироватьСтруктуруШапки(РежимПроведения, Отказ); //моСписокИспользуемыхПодсистем = СтруктураШапкиДокумента.СоответствиеИспользуемыеПодсистемы; СформироватьТаблицуПоЗаданиюПрих(СтруктураШапкиДокумента, ТаблицаПоЗаданию, Отказ); Если Не Отказ Тогда ДвиженияПоРегистрамПостуление(СтруктураШапкиДокумента, ТаблицаПоЗаданию, Отказ); КонецЕсли; КонецПроцедуры // Процедура - обработчик события "ОбработкаУдаленияПроведения" // // Процедура ОбработкаУдаленияПроведения(Отказ) обУдалитьДвиженияДокумента(ЭтотОбъект, Отказ); КонецПроцедуры // ОбработкаУдаленияДвижений() |
|||
1
igoza
18.06.13
✎
19:09
|
надобыло лишнее удалить, что бы не путать народ xD
|
|||
2
hhhh
18.06.13
✎
20:27
|
(2) ну вот же сам чистишь первое движение
ТаблицаДвижений = НаборДвижений.Выгрузить(); ТаблицаДвижений.Очистить(); |
|||
3
igoza
18.06.13
✎
20:39
|
(2) скопировал другой регистр, в ставил всё от старого, иработает прекрасно, что-то не так с настройками регистра было. Создал другой документ, он туда ничего не записывал!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |