|
Запись в регистр сведений программно | ☑ | ||
---|---|---|---|---|
0
НатГолубева777
23.03.20
✎
13:41
|
При отладчике "Если Выборка.Ссылка=НайденнаяСсылка Тогда" При истине попадает в "НоваяЗаписьПрайс.Номенклатура = Выборка.Ссылка;". Посмотрите ПОЖАЛУЙСТА что не так при записи регистра накопления.
Процедура КнопкаВыполнитьНажатие(Элемент) Путь= Константы.ПутьДоФайлов.Получить()+"\"; Док=ПолучитьCOMОбъект(Путь+"GS.xls"); Номенклатура=Док.Sheets(1).Cells(2,8).Value; счСтроки=2; Пока СокрЛП(Номенклатура) <> "" Цикл Номенклатура=Док.Sheets(1).Cells(СчСтроки,8).Value; ШК=Док.Sheets(1).Cells(СчСтроки,2).Value ; Сообщить(Строка(Номенклатура)+"-"+Строка(ШК)); счСтроки=счСтроки+1; СтрокаНаименования = Номенклатура; Ном = Справочники.Номенклатура; НайденнаяСсылка = Ном.НайтиПоНаименованию(СтрокаНаименования); Если НайденнаяСсылка = Ном.ПустаяСсылка() Тогда Сообщить("еще нет"); КонецЕсли; Запрос = Новый Запрос; Запрос.Текст= "ВЫБРАТЬ | Прайс.Номенклатура.Ссылка КАК Ссылка2 |ИЗ | РегистрСведений.Прайс КАК Прайс |ГДЕ | Прайс.Номенклатура.Ссылка В ИЕРАРХИИ(&Ссылка2)"; Запрос.УстановитьПараметр("Ссылка2", НайденнаяСсылка); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи=Результат.Выбрать(); Если Результат.Пустой() Тогда Запрос = Новый Запрос; Запрос.Текст= "ВЫБРАТЬ | Номенклатура.Ссылка КАК Ссылка, | Номенклатура.Наименование КАК Наименование |ИЗ | Справочник.Номенклатура КАК Номенклатура"; //Запрос.УстановитьПараметр("Ссылка3", Справочники.Номенклатура.НайтиПоНаименованию(Номенклатура)); Результат = Запрос.Выполнить(); Выборка=Результат.Выбрать(); Пока Выборка.Следующий() Цикл //Прайс.Отбор.Номенклатура.Установить(Номенклатура); Если Выборка.Ссылка=НайденнаяСсылка Тогда Сообщить("есть"); Прайс = РегистрыСведений.Прайс.СоздатьНаборЗаписей(); НоваяЗаписьПрайс = Прайс.Добавить(); НоваяЗаписьПрайс.Номенклатура = Выборка.Ссылка; Прайс.Записать() КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; Док.Application.Quit(); КонецПроцедуры |
|||
1
mikecool
23.03.20
✎
13:42
|
наверное, все не так
|
|||
2
mikecool
23.03.20
✎
13:42
|
смотря что тебе нужно получить
|
|||
3
НатГолубева777
23.03.20
✎
13:45
|
Надо чтобы отразилось в регистре накоплении Прайс.
НоваяЗаписьПрайс.Номенклатура = Выборка.Ссылка;-в отладчике нормально все как должно. Но в пользовательском регистре они неотобразились. |
|||
4
НатГолубева777
23.03.20
✎
13:45
|
регистр сведений не накоплений
|
|||
5
Случайный прохожий
23.03.20
✎
13:46
|
Добавить одну запись? Используй СоздатьМенеджерЗаписи()
|
|||
6
НатГолубева777
23.03.20
✎
13:46
|
Если Выборка.Ссылка=НайденнаяСсылка Тогда
Сообщить("есть"); Прайс = РегистрыСведений.Прайс.СоздатьНаборЗаписей(); НоваяЗаписьПрайс = Прайс.Добавить(); НоваяЗаписьПрайс.Номенклатура = Выборка.Ссылка; Прайс.Записать() КонецЕсли; ???????? |
|||
7
hhhh
23.03.20
✎
13:47
|
(6) отбора нет в регистре. А если пишем без отбора, то регистр полностью очищается. У вас должна быть одна строчка в регистре.
|
|||
8
НатГолубева777
23.03.20
✎
13:48
|
одна да попадает но не то что надо
|
|||
9
butterbean
23.03.20
✎
13:49
|
(5) не понимаю людей, которые пользуются для программной записи менеджером вместо набора. Даже в СП написано, что менеджер "...Предназначен для интерактивной работы с записью регистра сведений.... "
|
|||
10
Случайный прохожий
23.03.20
✎
13:50
|
(9) А как иначе? У него получается набор записей без отбора
|
|||
11
butterbean
23.03.20
✎
13:50
|
(10) надо отбор значит установить
|
|||
12
Случайный прохожий
23.03.20
✎
13:52
|
(11) Он привел всего одно измерение, по которому нельзя установить отбор. В текущем контексте постановки эта задача через набор записей не решается.
|
|||
13
НатГолубева777
23.03.20
✎
14:02
|
Если Выборка.Ссылка=НайденнаяСсылка Тогда
Сообщить("есть"); МенеджерЗаписиПрайс=РегистрыСведений.Прайс; МенеджерЗаписи=МенеджерЗаписиПрайс.СоздатьМенеджерЗаписи(); МенеджерЗаписи.Номенклатура=Выборка.Ссылка; МенеджерЗаписи.Записать(); КонецЕсли; Исправила на Менеджер записи... Час добавляет почему то 1 строку регистра добавляет не то что надо а потом идет нормальная запись. Почему так? |
|||
14
НатГолубева777
23.03.20
✎
14:17
|
Час нормально добавляет
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |