|
Перепроведение документа | ☑ | ||
---|---|---|---|---|
0
Sayan_mi
09.11.17
✎
16:12
|
Народ никак не пойму в чем проблема.
При проведении документа запись в регистр пишется корректно. При повторном проведении текущая запись в регистре удаляется (как оно и надо) но новая не появляется. Код вот: ткНаборЗаписей = РегистрыСведений.УАЗ_РаботникиОрганизаций.СоздатьНаборЗаписей(); ткНаборЗаписей.Отбор.Регистратор.Установить(Регистратор.Ссылка); Для Каждого Строка из Движения Цикл Элемент = ткНаборЗаписей.Добавить(); Элемент.Регистратор = Регистратор.Ссылка; Элемент.Организация = Регистратор.Организация; Элемент.Период = Регистратор.Дата; Элемент.Сотрудник = Строка.Сотрудник; Элемент.УАЗ_РабочееМесто = Строка.УАЗ_РабочееМесто; КонецЦикла; ткНаборЗаписей.Записать(Истина); |
|||
1
ComradeKite
09.11.17
✎
16:24
|
РегистрСведенийНаборЗаписей.<Имя регистра сведений> (InformationRegisterRecordSet.<Имя регистра сведений>)
Прочитать (Read) Синтаксис: Прочитать() Описание: Считывает записи из базы данных по установленному отбору. Доступность: Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер). Пример: КурсыВалют = РегистрыСведений.КурсыВалют; НаборКурсов = КурсыВалют.СоздатьНаборЗаписей(); НаборКурсов.Прочитать(); |
|||
2
Naumov
09.11.17
✎
16:29
|
(0) Для Каждого Строка из Движения Цикл
Кто есть твои движения? |
|||
3
Sayan_mi
09.11.17
✎
17:45
|
(1)Пробовал и прочитатать() тоже. В результате в ткНаборЗаписей появлялись две строки со старым значением в измерении УАЗ_РабочееМесто. Все остальное совпадало. После записи() в регистре сведений строчки по данному регистратору исчезали совсем. При следующем проведении появлялась опять, с новым значением.
(2)Необходимые для данного регистра данные из документа (массив структур). |
|||
4
wondkind
10.11.17
✎
05:38
|
(1) чтооо?! что вы говорите? Зачем читать набор перед "очисткой/перезаписью". Быстродействия много? А если отберу?
|
|||
5
wondkind
10.11.17
✎
06:03
|
(3) покажи, пожалуйста, полный код процедуры этой
|
|||
6
wondkind
10.11.17
✎
06:08
|
(5) и обрати внимание на настройку документа:
"Запись движений при проведении". Да и вообще настройки документа касательно движений. У людей часто с этим проблемы возникают. Вот недавно столкнулся с таким "багом": документ открываешь, перепроводишь - движения норм. Не закрывая документ жмёшь провести миллион раз - появляется миллион движений в проводках. Переоткрываешь документ и проводишь еще раз - движения снова одни. |
|||
7
Sayan_mi
10.11.17
✎
07:14
|
(5)Я её целиком и привел. Ну разве что без вызова этой процедуры. Поигрался ещё со свойством НабораЗаписей Записывать. Опять таки что ложь что истина поведение одно и тоже. (6) лезть в настройки документа не хотелось бы у него и без моего регистра движений хватает.
|
|||
8
Sayan_mi
10.11.17
✎
07:36
|
Да для уточнения конфа ЗиУП Корп 3.1.3.253 платформа 8.3.10.2561
|
|||
9
Мимохожий Однако
10.11.17
✎
07:40
|
(0) Надо писать в регистр из данных ДОКУМЕНТА, а не движений.
|
|||
10
1dvd
10.11.17
✎
07:41
|
(9) +1
|
|||
11
wondkind
10.11.17
✎
07:44
|
(9), (10) смотрите (3)
|
|||
12
Мимохожий Однако
10.11.17
✎
07:46
|
(11) И что там?
|
|||
13
wondkind
10.11.17
✎
07:47
|
(12) наверно, описано что в переменной "Движения" хранится.
|
|||
14
Мимохожий Однако
10.11.17
✎
07:49
|
(13) А у меня кофе для гадания закончилось. Движения - они и в Африке движения, то бишь результат проведения документа.
|
|||
15
Sayan_mi
10.11.17
✎
07:53
|
полный текст процедуры
&НаСервере Процедура УАЗ_ПроведениеРабочихМест(Регистратор, Движения) Экспорт ткНаборЗаписей = РегистрыСведений.УАЗ_РаботникиОрганизаций.СоздатьНаборЗаписей(); ткНаборЗаписей.Отбор.Регистратор.Установить(Регистратор.Ссылка); ткНаборЗаписей.Записывать = Истина; Для Каждого Строка из Движения Цикл Элемент = ткНаборЗаписей.Добавить(); Элемент.Регистратор = Регистратор.Ссылка; Элемент.Организация = Регистратор.Организация; Элемент.Период = Регистратор.Дата; Элемент.Сотрудник = Строка.Сотрудник; Элемент.УАЗ_РабочееМесто = Строка.УАЗ_РабочееМесто; КонецЦикла; ткНаборЗаписей.Записать(Истина); КонецПроцедуры Параметры Регистратор - документ объект Движения массив структур данные из документа для записи в регистр. |
|||
16
Мимохожий Однако
10.11.17
✎
07:56
|
(15) Структуру документа покажи и делай движения (т.е. записи в регистрах) из реквизитов документа.
(13) Ну как? |
|||
17
Sayan_mi
10.11.17
✎
08:01
|
(16) из реквизитов документа запись и идет, ну или из табличной части (там несколько документов, как следствие либо есть табличная часть и строк движений несколько либо нет и строка одна)
|
|||
18
wondkind
10.11.17
✎
08:04
|
(16) я, пожалуй, буду честным и сольюсь. Я сам не знаю шо он хочет. Просто указал на слова автора. Не хотел как-то грубить.
(17) и вообще, в чём проблема - есть же отладчик, посмотри что происходит. И не называй свои переменные так же как и встроенные: ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>) Движения (RegisterRecords) Использование: Только чтение. Описание: Тип: КоллекцияДвижений. Предоставляет доступ к коллекции наборов записей движений документа. Свойства коллекции содержат наборы записей движений документа, которые включены для данного документа в конфигурации. Имена свойств совпадают с именами объектов конфигурации, по которым могут совершаться движения, как они заданы в Конфигураторе. Доступность: Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер). |
|||
19
Мимохожий Однако
10.11.17
✎
08:23
|
(17) Покажи структуру документа. Ты не привёл кода, который доказывает твои слова.
(18) не переживай )) Как понял,так и написал. Просто ТС не понимает, что перепутал причину (реквизиты документа) и следствие (движения документа) |
|||
20
Sayan_mi
10.11.17
✎
09:15
|
Ну в том что назвал переменную не корректно да не прав. Тут полазил по отладчику и понял что проблема не здесь. Запись в регистре нармально создаётся (перечитывал набор записей) она исчезает позже. Т.е. другие действия в документе её затирают. Сейчас буду трассировать дальше, а переменную переобзову.
|
|||
21
ComradeKite
10.11.17
✎
09:54
|
Скорее всего в событии ПриЗаписи в модуле регистра сведений.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |