|
Не понимаю как работает запись в РС | ☑ | ||
---|---|---|---|---|
0
gvozdoderov
22.08.13
✎
15:18
|
Добрый день, коллеги!
Столкнулся со следующей проблемой Вот код НаборЗаписей = РегистрыСведений.ВиртуальныеОстатки.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Номенклатура.Использование = Истина; НаборЗаписей.Отбор.ХарактеристикаНоменклатуры.Использование = Истина; НаборЗаписей.Отбор.Номенклатура.Установить(Строка.Номенклатура); НаборЗаписей.Отбор.ХарактеристикаНоменклатуры.Установить(Строка.Характеристика); Запись = НаборЗаписей.Добавить(); Запись.Номенклатура = Строка.Номенклатура; Запись.ХарактеристикаНоменклатуры = Строка.Характеристика; Запись.Количество = Строка.Количество; НаборЗаписей.Записать(); Начинаю добавлять записи в пустой регистр. Например значения Ботинки 35,черный 100. Добавляется нормально. Запускаю второй раз, добавляю Туфли 35,черный 100. В регистр попадает только количество, а номенклатура и характеристика пустые. Второй раз запускаю туже позицию, всё заполняется, но запись с пустыми номенклатурой и характеристикой остаются естественно Разъясните, пожалуйста... |
|||
1
wPa
22.08.13
✎
15:21
|
(0) пользуй менеджер записи
|
|||
2
GANR
22.08.13
✎
15:21
|
(0) Типы данных измерений регистра Номенклатура, Характеристика и того, что пытаемся записать в них совпадают???
|
|||
3
gvozdoderov
22.08.13
✎
15:22
|
(2) да
|
|||
4
gvozdoderov
22.08.13
✎
15:25
|
причем даже когда прохожусь отладчиком, во втором случае на строках
Запись.Номенклатура = Строка.Номенклатура; Запись.ХарактеристикаНоменклатуры = Строка.Характеристика; просто игнорируется присвоение значения, т.е. пустые они остаются |
|||
5
wPa
22.08.13
✎
15:26
|
(4) прочитать набор надо
|
|||
6
gvozdoderov
22.08.13
✎
15:26
|
Думаю, может отборы как то не так ставлю. Сам РС непереодический, неподчиненный
|
|||
7
Euguln
22.08.13
✎
15:27
|
1. НаборЗаписей.Прочитать();
2. Плохо использовать конструкцию "Строка.", переименуй |
|||
8
gvozdoderov
22.08.13
✎
15:27
|
(5) если прочитать набор, то если уже есть запись с такими измерениями, она не перезаписывается и соответственно вылазит ошибка
|
|||
9
RomaH
naïve
22.08.13
✎
15:28
|
(6)
НаборЗаписей.Отбор.Номенклатура.Использование = Истина; НаборЗаписей.Отбор.ХарактеристикаНоменклатуры.Использование = Истина; это вроде как лишнее при наличии "Установить" |
|||
10
Euguln
22.08.13
✎
15:28
|
(8) прочитай, очисти, записывай.
|
|||
11
RomaH
naïve
22.08.13
✎
15:28
|
(5) зачем?
|
|||
12
RomaH
naïve
22.08.13
✎
15:29
|
(10) смысл читать набор? что бы его потом очистить?
|
|||
13
Starhan
22.08.13
✎
15:30
|
(0) может таки покажешь код полностью, что там у тебя в "строка" находится?
|
|||
14
RomaH
naïve
22.08.13
✎
15:30
|
(4) типы не совпадают
1 - переименуй "Строка" на СтрокаТЧ что ли 2 - сообщить ТипЗнч(Номенклатуры) |
|||
15
gvozdoderov
22.08.13
✎
15:32
|
(9) убрал
(7) поменял на Стр. Прочитать поставить не могу, ибо нужно записи перезаписывать будет Ситуация повторилась. Первый раз всё записалось. Сменил только номенклатуру и в регистре запись снова появилась с пустыми Номенклатурой и Характеристикой |
|||
16
RomaH
naïve
22.08.13
✎
15:34
|
(15) не понял - а типа без "Прочитать" не будет перезаписывать?
оно вроде в любом случае пишет набор по установленному отбору |
|||
17
Euguln
22.08.13
✎
15:34
|
(15) а в строке они точно не пустые?
|
|||
18
RomaH
naïve
22.08.13
✎
15:35
|
(15) давай код полностью - откуда выполняется/вызывается
|
|||
19
RomaH
naïve
22.08.13
✎
15:36
|
сообщить ТипЗнч(Номенклатуры) - что возвращает?
НаборЗаписей.Отбор.Номенклатура.Установить(Строка.Номенклатура); сообщить(ТипЗнч(Строка.Номенклатура)); а отбор устанавливаются -- или тоже пустые? |
|||
20
gvozdoderov
22.08.13
✎
15:40
|
(19) щас, брат, буду разбираться... похоже где то здесь и проблема
|
|||
21
gvozdoderov
22.08.13
✎
15:51
|
(19) Спасибо, Брат! Все дело было в том, что в номенклатуре не всегда ссылка была, а еще и объект
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |