|
v7: В Документе ссылка на справочник | ☑ | ||
---|---|---|---|---|
0
goldenhawk
23.04.15
✎
10:41
|
Если у нас есть Док1. В табличной части реквизит Рек1 -ссылка на справочник Спр1.
Как записать значение в Док1.Рек1 ? Как взять значение по ссылке Док1.Рек1 ? |
|||
1
Defender aka LINN
23.04.15
✎
10:42
|
=
|
|||
2
Ненавижу 1С
гуру
23.04.15
✎
10:43
|
у строки нужной табличной части есть этот реквизит
|
|||
3
goldenhawk
23.04.15
✎
10:48
|
Можно пример кода привести?
Я совсем не разбираюсь в этом. Спасибо. |
|||
4
silent person
23.04.15
✎
10:49
|
записать значение
Док1.Рек1 = <Значение>; просто прочитать Переменная = Док1.Рек1; если этот элемент справочника надо изменить СпрКакойто = СоздатьОбъект("Справочник.ИмяСправочника") СпрКакойто.НайтиЭлемент(Док1.Рек1); СпрКакойто.РеквизитСправочника = ЧтоТо; СпрКакойто.Записать(); |
|||
5
goldenhawk
23.04.15
✎
10:58
|
записать значение
Док1.Рек1 = <Значение>; просто прочитать Переменная = Док1.Рек1; Док1.Рек1- это ссылка на справочник. Переменная = Док1.Рек1;--тут он вернет строку всех значений, т.е. можно написать Док1.Рек1.Наименование , Док1.Рек1.Колонка333 ???? Док1.Рек1 = <Значение>; Значение чем может быть. если мне надо Найти Строку в Справочнике??? |
|||
6
silent person
23.04.15
✎
11:01
|
расшифруй вот эти понятия "строку всех значений" и "если мне надо Найти Строку в Справочнике???"
|
|||
7
goldenhawk
23.04.15
✎
11:05
|
Мне надо сделать:
ТаблицаРезультат = СоздатьОбъект("ТаблицаЗначений"); ТаблицаРезультат.НоваяКолонка("КодТары",,,,"КодТары",20); ТаблицаРезультат.НоваяКолонка("НаименованиеТары",,,,"НаименованиеТары",20); ТаблицаРезультат.НоваяКолонка("КодТНВЭД",,,,"КодТНВЭД",20) ... СпрВУ=СоздатьОбъект("Справочник.ВидыУпаковки"); ДокТабЧастьВУ=СоздатьОбъект("Документ.ТабЧастьВУ"); ДокТабЧастьВУ.ВыбратьСтроки(); Пока ДокТабЧастьВУ.ПолучитьСтроку() = 1 Цикл ТаблицаРезультат.НоваяСтрока(); СпрВУ.Найти(ДокТабЧастьВУ.КодТары); ..тут не знаю как сделать ТаблицаРезультат.КодТары = СпрВУ.Код; ТаблицаРезультат.НаименованиеТары= СпрВУ.Наименование; ТаблицаРезультат.КодТНВЭД = СпрВУ.КодТНВЭД; ТаблицаРезультат.Вес = ДокТабЧастьВУ.ВесЕдиницы; ТаблицаРезультат.Колво = ДокТабЧастьВУ.Количество; ТаблицаРезультат.ВесВсего = ДокТабЧастьВУ.ВесВсего; КонецЦикла; |
|||
8
goldenhawk
23.04.15
✎
11:09
|
и еще добавление строки в документ
СпрВУ=СоздатьОбъект("Справочник.ВидыУпаковки"); ДокТабЧастьВУ=СоздатьОбъект("Документ.ТабЧастьВУ"); ДокТабЧастьВУ.НайтиДокумент(ТабЧастьВУ); // записываем новые данные ДМВНоменклатуре.ВыбратьСтроки(); Пока ДМВНоменклатуре.ПолучитьСтроку() = 1 Цикл СпрВУ.НайтиПоКоду(ДМВНоменклатуре.КодТары); ДокТабЧастьВУ.НоваяСтрока(); ДокТабЧастьВУ.КодТары = СпрВУ.Код; ДокТабЧастьВУ.НаименованиеТары = СпрВУ.Наименование; ДокТабЧастьВУ.КодТНВЭД = СпрВУ.КодТНВЭД; ДокТабЧастьВУ.ВесЕдиницы = ДМВНоменклатуре.Вес; ДокТабЧастьВУ.Количество = ДМВНоменклатуре.Колво; ДокТабЧастьВУ.ВесВсего = ДМВНоменклатуре.ВесВсего; ДокТабЧастьВУ.Записать(); КонецЦикла; |
|||
9
goldenhawk
23.04.15
✎
11:11
|
точнее
// записываем новые данные ДМВНоменклатуре.ВыбратьСтроки(); Пока ДМВНоменклатуре.ПолучитьСтроку() = 1 Цикл СпрВУ.НайтиПоКоду(ДМВНоменклатуре.КодТары); ДокТабЧастьВУ.НоваяСтрока(); ДокТабЧастьВУ.КодТары = СпрВУ.Код;здесь ссылку передать нужно в документ ДокТабЧастьВУ.ВесЕдиницы = ДМВНоменклатуре.Вес; ДокТабЧастьВУ.Количество = ДМВНоменклатуре.Колво; ДокТабЧастьВУ.ВесВсего = ДМВНоменклатуре.ВесВсего; ДокТабЧастьВУ.Записать(); КонецЦикла; |
|||
10
silent person
23.04.15
✎
11:11
|
СпрВУ.НайтиПоКоду(ДокТабЧастьВУ.КодТары,0); 0 - если нумерация справочника "Во всем справочнике"
ты же в (1) говорил что у тебя в документе есть ссылка на справочник а в (8) у тебя нет ссылки на справочник в табличной части, там только Код,Наименование и ТНВЭД |
|||
11
silent person
23.04.15
✎
11:13
|
тип реквизита документа "КодТары" какой ?
|
|||
12
goldenhawk
23.04.15
✎
11:15
|
В документе ДокТабЧастьВУ табличная часть--- КодТары(ссылка на справочник), ВесЕдиницы,Количество,ВесВсего
|
|||
13
silent person
23.04.15
✎
11:20
|
извини, но ты уже второй день мучаешся с этой проблемой, но не можешь нормально сформулировать вопрос и ответить на заданные и похоже вообще не владеешь терминологией.
Если у тебя реквизит КодТары имеет тип "Справочник", то нафига тебе его искать по Коду вот здесь: ТаблицаРезультат.НоваяСтрока(); СпрВУ.Найти(ДокТабЧастьВУ.КодТары); ..тут не знаю как сделать у тебя и так уже есть элемент справочника из которого можно получить все. Если у тебя реквизит КодТары имеет тип "Строка" или "Число", то ссылку на справочник этому реквизиту не присвоить. |
|||
14
silent person
23.04.15
✎
11:26
|
последняя попытка если у тебя есть ссылка на справочник в документе
СпрВУ=СоздатьОбъект("Справочник.ВидыУпаковки"); ДокТабЧастьВУ=СоздатьОбъект("Документ.ТабЧастьВУ"); ДокТабЧастьВУ.ВыбратьСтроки(); Пока ДокТабЧастьВУ.ПолучитьСтроку() = 1 Цикл ТаблицаРезультат.НоваяСтрока(); ТаблицаРезультат.КодТары = ДокТабЧастьВУ.КодТары.Код; ТаблицаРезультат.НаименованиеТары= ДокТабЧастьВУ.КодТары.Наименование; ТаблицаРезультат.КодТНВЭД = ДокТабЧастьВУ.КодТары.КодТНВЭД; ТаблицаРезультат.Вес = ДокТабЧастьВУ.ВесЕдиницы; ТаблицаРезультат.Колво = ДокТабЧастьВУ.Количество; ТаблицаРезультат.ВесВсего = ДокТабЧастьВУ.ВесВсего; КонецЦикла; // записываем новые данные ДМВНоменклатуре.ВыбратьСтроки(); Пока ДМВНоменклатуре.ПолучитьСтроку() = 1 Цикл СпрВУ.НайтиПоКоду(ДМВНоменклатуре.КодТары); ДокТабЧастьВУ.НоваяСтрока(); ДокТабЧастьВУ.КодТары = СпрВУ.ТекущийЭлемент();здесь ссылку передать нужно в документ ДокТабЧастьВУ.ВесЕдиницы = ДМВНоменклатуре.Вес; ДокТабЧастьВУ.Количество = ДМВНоменклатуре.Колво; ДокТабЧастьВУ.ВесВсего = ДМВНоменклатуре.ВесВсего; КонецЦикла; ДокТабЧастьВУ.Записать(); |
|||
15
goldenhawk
23.04.15
✎
11:37
|
Спасибо за помощь
|
|||
16
Vladal
23.04.15
✎
11:43
|
Предлагаю ознакомиться с учебником - http://1c.chistov.pro/2007/12/77.html
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |