Имя: Пароль:
1C
1С v8
v8: Нужна помощь с получением данных из другого документа
,
0 Antimyslitel
 
22.03.13
14:08
Добрый день!
Чуть ранее задавал вопрос но видимо пока не нашлось людей которые могут помочь, или же посоветовать!
Попробую заново описать проблему и поставить более правильно вопрос!
Конфигурация: UT 10.3 Платформа 8.2
ВОПРОС:
У меня есть документ Заказ покупателя, в котором я добавил реквизит Регистрационный номер!
Также у меня есть документ комплектация номенклатуры!
Так вот мне надо, в документе комплектация номенклатуры, добавить поле, в которое будет падать регистрационный номер из документа заказ покупателя!
Кто что посоветует! прошу если возможно то чуточку по подробней потому как я в этом нУб!
1 butterbean
 
22.03.13
14:11
ты определись что тебе надо: ссылка на заказ покупателя, чтобы к нему обращаться в отчетах например, или просто какой-то регистрационный номер типа строка
2 MSII
 
22.03.13
14:13
У тебя в комплектации номенклатуры уже есть ссылка на заказ покупателя (реквизит Заказ), так что сам документ  "комплектация номенклатуры" модифицировать не нужно. Если хочешь видеть в форме комплектации свой регистрационный номер, просто выведи его на форму в поле надписью.
3 Antimyslitel
 
22.03.13
14:14
Мне надо просто видеть какой-то регистрационный номер типа строка который указан в документе заказ покупателя!
4 Antimyslitel
 
22.03.13
14:15
и если можно посоветуйте что мне нужно сделать, что бы видеть контактные данные контрагента в самом документе заказ покупателя?
5 butterbean
 
22.03.13
14:15
(4) с регистрационным номером уже разобрался??
6 Antimyslitel
 
22.03.13
14:17
Нет с регистрационным номером еще не разобрался! помогите плзз!
7 Antimyslitel
 
22.03.13
14:21
Ребята ну неужели никто не подскажет как это осуществить?
8 MSII
 
22.03.13
14:22
(7) Подсказали уже.
9 Antimyslitel
 
22.03.13
14:24
(2) Не понятно немного если это считать подсказкой! Вот я сейчас в документе комплектация номенклатура добавил реквизит Регистрационный номер с типом значения СТРОКА! Как теперь мне сделать так что бы регистрационный номер из заказа покупателя попадал туда?
10 butterbean
 
22.03.13
14:26
(9) в модуле документа поищи процедуру ОбработкаЗаполнения
11 Antimyslitel
 
22.03.13
14:27
(10) а можно более подробно написать что мне надо там написать? я вообще незнаю просто что писать!!!
12 butterbean
 
22.03.13
14:29
(11) у меня под рукой нет УТ 10.3, поэтому не могу сказать точно
13 Gossar1C
 
22.03.13
14:30
(11) там есть Параметр ДокументОснование в твоем случае это заказ, когда ты делаешь (на основании Заказа)! Комплектацию пишешь РегистрационныйНомер = ДокументОснование.РегистрационныйНомер
14 Antimyslitel
 
22.03.13
14:30
(12) наверное что то типа
Процедура ОбработкаЗаполнения(РегистрационныйНомер)
   РегистрационныйНомер = Документ.ЗаказПокупателя.РегистрационныйНомер;
КонецПроцедуры;
Что то типа того?
15 MSII
 
22.03.13
14:33
(14)
Процедура ОбработкаЗаполнения(ЧоТамУТЕбя)
РегистрационныйНомер = ЧоТамУТЕбя.РегистрационныйНомер;
16 Gossar1C
 
22.03.13
14:33
Наверное что то типа этого

Процедура ОбработкаЗаполнения(ДанныеЗаполнения,СтандартнаяОбработка)

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаказПокупателя") Тогда
РегистрационныйНомер = ДанныеЗаполнения.РегистрационныйНомер
КонецЕсли;

КонецПроцедуры
17 butterbean
 
22.03.13
14:33
(14) это должна была быть процедура уже написанная настоящим программистом, если ее нет в модуле документа, то не надо ее добавлять туда — не сработает все равно
18 Gossar1C
 
22.03.13
14:35
(14) вообще если тебе надо делать Комплектацию на основании тогда воспользуйся конструктором
19 Gossar1C
 
22.03.13
14:36
если просто то передавай владельца
20 MSII
 
22.03.13
14:38
(17) Она там есть, у него же типовая.
21 Antimyslitel
 
22.03.13
14:40
(16) Процедура ОбработкаЗаполнения(Основание)

   // Заполним реквизиты из стандартного набора по документу основанию.
   ЗаполнениеДокументов.ЗаполнитьШапкуДокументаПоОснованию(ЭтотОбъект, Основание);

   Если ТипЗнч(Основание) = Тип("ДокументСсылка.ЗаказПокупателя") Тогда

       // Заполнение шапки
       Комментарий     = Основание.Комментарий;
       Заказ           = Основание.Ссылка;
       РегистрационныйНомер = Основание.РегистрационныйНомер;
       
   ИначеЕсли ТипЗнч(Основание) = Тип("ДокументСсылка.ВнутреннийЗаказ") Тогда

       // Заполнение шапки
       Комментарий     = Основание.Комментарий;
       Заказ           = Основание.Ссылка;

   ИначеЕсли ТипЗнч(Основание) = Тип("ДокументСсылка.СчетНаОплатуПокупателю") Тогда

       // Заполнение шапки
       ОтражатьВУправленческомУчете = Истина;
       ОтражатьВНалоговомУчете      = Ложь;
       ОтражатьВБухгалтерскомУчете  = Ложь;
       Комментарий    = Основание.Комментарий;

       Если ЗначениеЗаполнено(Основание.ЗаказПокупателя) Тогда
           Заказ = Основание.ЗаказПокупателя;
       КонецЕсли;

   КонецЕсли;

КонецПроцедуры

Добавил как Вы показали но в комплектацию все равно номер не  берется!
22 butterbean
 
22.03.13
14:41
(21) ты конечно же вводишь документ комплектации на основании заказа покупателя, или просто открываешь уже созданный документ
23 Antimyslitel
 
22.03.13
14:44
(22) Открываю уже созданный!
24 Gossar1C
 
22.03.13
14:44
(21) Ты с ЗаказаПокупателя создаешь на основании новый документ?
25 Antimyslitel
 
22.03.13
14:45
(22) Если ввожу новый на основании заказа то там все нормально! все отображается спс!
26 Gossar1C
 
22.03.13
14:45
(23) данный метод срабатывает если ты создаешь новый на основании заказа
27 Antimyslitel
 
22.03.13
14:46
(26) а что бы перебрал старые что требуется сделать? И спасибо за совет с методом! Просто огромное спасибо!
28 Antimyslitel
 
22.03.13
14:49
и если не сложно подскажи что мне надо сделать, чтобы в новые добавленные реквизиты, в документе заказ покупателя со значением строка, попадали данные контрагента например: телефон, адрес, и факс. СПС! Заранее благодарен! (26)
29 butterbean
 
22.03.13
14:53
(28) не надо добавлять такие реквизиты, это будет тупое дублирование данных регистра сведений КонтактнаяИнформация. Сделай просто надписи на форме и заполняй их из запроса к регистру КонтактнаяИнформация
30 Antimyslitel
 
22.03.13
14:56
(29) так мне надо что бы потом в списке заказ покупателя эти данные тоже высвечивались понимаешь? и я незнаю как код писать поэтому прошу совет!
31 Gossar1C
 
22.03.13
14:57
(29)да уж там с этой контактной инф. гем в плане передачи в другой документ
32 Gossar1C
 
22.03.13
14:59
я также делал через реквизиты, просто не смог понять стандартный механизм этой КИ
33 butterbean
 
22.03.13
15:00
(30) ну если в списке надо, тогда может и стоит реквизиты добавить
34 Antimyslitel
 
22.03.13
15:02
(32) Помоги пожалуйста как мне это осуществить?
35 Gossar1C
 
22.03.13
15:03
НомерТелефона = Элементы.КонтактнаяИнформацияПоле(1 или 2 или 3 в зависимости что ты хочешь взять и в каком порядке).ТекстРедактирования;

далее разберешься
36 Antimyslitel
 
22.03.13
15:06
(35) не понятно немного!
37 Gossar1C
 
22.03.13
15:08
создаешь реквизиты у контрагента телефон, адрес, и факс.

и записываешь

Телефон = Элементы.КонтактнаяИнформацияПоле(по порядку это какой элемент на форме допустим 1).ТекстРедактирования
Адрес = Элементы.КонтактнаяИнформацияПоле2.ТекстРедактирования
Факс = Элементы.КонтактнаяИнформацияПоле3.ТекстРедактирования

Только надо будет всех контрагентов перезаписать
38 Antimyslitel
 
22.03.13
15:14
(37) Ок! А что означает текстРедактирования?
39 Antimyslitel
 
22.03.13
15:16
Процедура ТелефонКонтрагентаОткрытие(Элемент, СтандартнаяОбработка)
   
   ТелефонКонтрагента = Контрагент.Элементы.КонтактнаяИнформацияПоле1.ТекстРедактирования;
   
КонецПроцедуры (37)
Так попробывал и перезаписал и перевыбрал контрагента все равно не получается!
40 Antimyslitel
 
22.03.13
15:17
(37) Когда делаю так:
Процедура ТелефонКонтрагентаОткрытие(Элемент, СтандартнаяОбработка)
   
ТелефонКонтрагента = Элементы.КонтактнаяИнформацияПоле1.ТекстРедактирования;
   
КонецПроцедуры
тогда ругается так:

{Документ.ЗаказПокупателя.Форма.ФормаДокумента(2467,23)}: Переменная не определена (Элементы)
   ТелефонКонтрагента = <<?>>Элементы.КонтактнаяИнформацияПоле1.ТекстРедактирования;  (Проверка: Толстый клиент (обычное приложение))
41 Gossar1C
 
22.03.13
15:21
а у тебя на форме контрагенты отображаются телефон факс и тд?
42 Gossar1C
 
22.03.13
15:21
аааа
43 Gossar1C
 
22.03.13
15:21
толстый клиент =\ вот тут уже запара
44 Gossar1C
 
22.03.13
15:23
пробуй ЭтаФорма.Элементы.КонтактнаяИнформацияПоле1.ТекстРедактирования или ЭтаФорма.КонтактнаяИнформацияПоле1.ТекстРедактирования;

выведи свой реквизит телефон (на время) на форму контрагента и смотри запишет туда или нет, или отладчиком смотри
45 Antimyslitel
 
22.03.13
15:39
не получается(((
46 Gossar1C
 
22.03.13
15:44
ЭлементыФормы Пробовал?
47 drcrasher
 
22.03.13
15:47
а в общий модуль УправлениеКонтактнойИнформацией смотреть не пробовали?
48 Gossar1C
 
22.03.13
15:47
(47) пробовал, лучше туда не смотреть -__-
49 Antimyslitel
 
22.03.13
15:55
(46) пробывал говорит НИНИ! (48) С этим ужь точно согласен!
50 Antimyslitel
 
22.03.13
15:56
(48) Неужели ни у кого не возникало раньше такого?
51 Antimyslitel
 
22.03.13
15:57
(48) Просто меня жена попросила она говорит что ей не удобно и она хочет видеть контактные данные контрагента в документе, а то сложно работать, вот я и вызвался помочь! Но так и не вьеду что да как!
52 Gossar1C
 
22.03.13
16:03
чтобы контактные данные были видны на форме контрагента нужно в справочнике виды контактной информации добавить предопределенные элементы, там увидишь как они сделаны разберешься