Имя: Пароль:
1C
1С v8
Как добавить строки в документ откуда вызвала обработку.
0 Nata3711
 
11.08.15
13:04
Здравствуйте,,,,,
Как добавить строки ТЗ в ТЧ документа от куда вызвала обработку, где я обработала данные........



Процедура КнопкаВыполнитьНажатие(Кнопка)
    // Вставить содержимое обработчика.
    ТаблицаОбработки        = Товары.Выгрузить();
        
    

    //ТЗ=ТаблицаОбработки.Выгрузить();
    ВыборкаДетальныеЗаписи = ТаблицаОбработки.ВыбратьСтроку();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
            НоваяСтрока=Товары.Добавить();
            НоваяСтрока.Номенклатура=ВыборкаДетальныеЗаписи.Номенклатура;
            НоваяСтрока.Количество=ВыборкаДетальныеЗаписи.Количество;
            НоваяСтрока.ЕдиницаИзмерения=ВыборкаДетальныеЗаписи. Номенклатура.ЕдиницаХраненияОстатков;
            НоваяСтрока.СуммаТовара=ВыборкаДетальныеЗаписи.СуммаТовара;
            НоваяСтрока.ХарактеристикаНоменклатуры = ВыборкаДетальныеЗаписи.ХарактеристикаНоменклатуры;
            НоваяСтрока.Объем=ВыборкаДетальныеЗаписи.Вес;
            НоваяСтрока.Сумма=ВыборкаДетальныеЗаписи.ОбщСумма;
            //НоваяСтрока.СуммаНДС=ВыборкаДетальныеЗаписи.СуммаНДС;
            //НоваяСтрока.СтавкаНДС=ВыборкаДетальныеЗаписи.СтавкаНДС;
            //НоваяСтрока.Размещение=ВыборкаДетальныеЗаписи.Размещение;
            //НоваяСтрока.ПроцентСкидкиНаценки=ВыборкаДетальныеЗаписи.ПроцентСкидкиНаценки;
            НоваяСтрока.Коэффициент=ВыборкаДетальныеЗаписи.Коэффициент;
КонецЦикла;


КонецПроцедуры
1 aka AMIGO
 
11.08.15
13:05
(0) что не работает-то?
2 Nata3711
 
11.08.15
13:11
{Обработка.РаспределениеДопРасходовПоОбъему.Форма.Форма.Форма(11)}: Метод объекта не обнаружен (Следующий)
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
3 Nata3711
 
11.08.15
13:12
Выдает ошибку :{Обработка.РаспределениеДопРасходовПоОбъему.Форма.Форма.Форма(11)}: Метод объекта не обнаружен (Следующий)
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
4 ДенисЧ
 
11.08.15
13:12
После этого
"ВыборкаДетальныеЗаписи = ТаблицаОбработки.ВыбратьСтроку();"

во мне всё настойчивей просыпается Станиславский...
5 lera01
 
11.08.15
13:14
(0) Для Каждого ВыборкаДетальныеЗаписи Из ТаблицаОбработки Цикл
6 aka AMIGO
 
11.08.15
13:22
(4) лучше разбуди в себе Макаренко :)
и найди в себе силы переделать оператор :)
7 Nata3711
 
11.08.15
13:29
Для Каждого ВыборкаДетальныеЗаписи Из ТаблицаОбработки Цикл---Работает, но данные добавляются в ту же таблицу обработки А мне надо в ТЧ документа, откуда я вызвала обработку...Мне надо наверно как то надо указать этот объект(документ)????
Подскажите ПЛИЗЗЗЗ,,
8 Mankubus
 
11.08.15
13:36
(7)
>> Мне надо наверно как то надо указать этот объект(документ)
100%
9 godmod80
 
11.08.15
13:39
(7) Оо вам нужна ссылка на документ
10 Nata3711
 
11.08.15
13:42
Ну и все.....? не поможете?
11 lera01
 
11.08.15
13:42
(7) Так откуда ж мы знаем, где этот кусок кода расположен? В обработке судя по всему. Во многих конфах есть механизм подключения внешних обработок табличных частей. Попробуй освоить.
12 Nata3711
 
11.08.15
13:44
Этот код ...да расположен в обработке, которую вызвала из документа......
13 godmod80
 
11.08.15
13:54
ыы выбратьстроку() дает тебе ОДНУ строку, цикл нах,
сохрани куданить ссылку типа: ссылка = Документ.ссылка, в реквизит может
14 godmod80
 
11.08.15
13:56
(7) кстати да есть такая фишка Этотобъект.  и тд )
15 aka AMIGO
 
11.08.15
13:59
научите девочку, как обратиться к табличной части документа, в котором вызвана обработка..

знаний мне нехватает.. подсказал-бы :)

ИМХО - не обработка, видимо, а некая процедура существует в документе, и кнопка на форме этого документа, вызывающая процедурку..
16 godmod80
 
11.08.15
14:02
(15) выбрать строку снаружи вызывает у ней
17 Nata3711
 
11.08.15
14:04
Я понимаю что это не то......Я на самом деле не знаю как в обработке добавить новые строки в документ ОТКУДА Я ВЫЗВАЛА ОБРАБОТКУ

Подскажи..Мне так кажется знаешь....
18 godmod80
 
11.08.15
14:08
(17) СОХРАНИ РЕКВИЗИТ ССЫЛКА, как еще сказать)
потом стр = ссылка.тч.добавить()
19 godmod80
 
11.08.15
14:10
орет еще, всё ухожу внедрять ерп
20 DexterMorgan
 
11.08.15
14:12
без фото не взлетит
21 DexterMorgan
 
11.08.15
14:12
(17) Поставь фотку я тебе подскажу)
22 Nata3711
 
11.08.15
14:14
Представь меня в виде Мерлин Монро .....Помогите...
23 Nata3711
 
11.08.15
14:15
Хорошо как сохранить реквизит на объект?
24 Nata3711
 
11.08.15
14:17
Не уж то это так сложно???
25 DexterMorgan
 
11.08.15
14:20
(24) Не надо тебе в обработке менять документ - передай обратно из формы обработки в документ данные,  и в самом документе уже меняй
26 DexterMorgan
 
11.08.15
14:20
(18) Через ссылку не получится - по ссылке ты получишь документ из бд, а данные на форме документа могут отличаться от данных бд
27 aka AMIGO
 
11.08.15
14:24
(24) когда не знаешь - это сложно.. даже непреодолимо :)
этот код взят из ФормыДокумента, док ПоступлениеТоваровИЧегоТоТам..
        // добавляем новую строку.
        СтрокаТабличнойЧасти = ТабличнаяЧасть.Добавить();
        СтрокаТабличнойЧасти.Номенклатура     = Номенклатура;
        СтрокаТабличнойЧасти.Количество       = Количество;

        Если (ТабличнаяЧасть = Товары) ИЛИ (ТабличнаяЧасть = Оборудование) Тогда

            СтрокаТабличнойЧасти.ЕдиницаИзмерения = ЕдиницаИзмерения;
            СтрокаТабличнойЧасти.Коэффициент      = 1;
.......

// в качестве примера обращения к ТЧ документа из МодуляФормыДокумента
Я так и не нашел, где ты обратилась к ТЧ документа..
А все ТЧ имеют имена.
Если обращение к документу по ссылке, то сконструируй обращение к ТЧ через ссылку.
28 Nata3711
 
11.08.15
14:30
Наконец-то поняли мою проблему...Так как обратиться кТЧ через ссылку....Я же когда выгружала из документа в ТЗ обработки Не указывала "ИЗ КАКОГО ДОКУМЕНТА Я ВЫГРУЗИЛА ДАННЫЕ: ВИД,,НОМЕР..И Т,Д, И Т,П"
29 Gantosha
 
11.08.15
14:32
мы ее давно поняли, но за секстизм санкции и лишения голоса.
30 Nata3711
 
11.08.15
14:33
А что бы менять в самом документе данные .... надо сам документ переделывать...При обновлении 1с не очень то хорошо будет..
31 Dolphinbet
 
11.08.15
14:34
"При обновлении 1с не очень то хорошо будет." определенно
32 Nata3711
 
11.08.15
14:35
Что то не так сказала?
33 Gantosha
 
11.08.15
14:37
да, не все нормально .. просто мы то данные в таблицы уже лет по 10-15 добавляем и ваши мучения вызывают первобытные страхи .. у меня за такое спинной мозг отвечает , а лобные доли уже давно не работают. А тут вы с вопросами.
34 aka AMIGO
 
11.08.15
14:38
(28) Непонятно.. Ты выгружаешь ТЗ из документа, и документ этот неизвестен?

ТЧ-то существует внутри документа.. см. (8)

И см. (29) он прав в первой части своего поста.
35 aka AMIGO
 
11.08.15
14:39
(33) Gantosha ладно, не страшись, подсказывай из спинного мозга :)
36 Nata3711
 
11.08.15
14:40
Не данные а форму документа-поправила
37 aka AMIGO
 
11.08.15
14:42
А вообще, Nata3711 , надо не мучить форумчан, а связно излагать суть проблемы.. Из тебя-ж приходится тянуть сведения.
38 godmod80
 
11.08.15
14:45
(30) крайне не рекомендую тебе это делать, читай желтую книгу конфигурирование и администрирование 8х, там и синтаксис языка найдешь хоть
39 Gantosha
 
11.08.15
14:47
шутишь что-ли ? я после обеда , конфигуратор не открывал уже два дня , завтра еду в мини отпуск. А так как я программирую копипейстом то не открыв конфигуратор я ничего не напишу.
40 Nata3711
 
11.08.15
14:49
Проблему поняли...как я погляжу....а помочь и пожалеть нет ума,,,,
41 aka AMIGO
 
11.08.15
14:50
(38) +100

(0) проблема твоя решалась ранее:
v8: Как программно заполнить табличную часть документа
v8: v8.2: Как заполнить табличную часть документа результатом выполнения запроса
v8: Заполнение табличной части документа

ну, и так далее, по запросу заполнить тч документа в Поиске по форуму.

(40) и не оскорбляй форумчан. Наверняка тебе уже подсказано решение, но не осознано.
42 Nata3711
 
11.08.15
14:52
Да нет я  не хотела обидеть.если  обидела то  извиняюсь
43 Gantosha
 
11.08.15
14:53
ты внешнюю обработку как с документа запускаешь ?
тебе надо что бы в нее попал твой документ.
44 Nata3711
 
11.08.15
14:56
1.Открываю документ
2.Нажимаю на кнопку(действие)-вызываю обработку
3.Обработка открывается, где загрузила данные из документа
4.В обработке данные обработала
5. И теперь мне надо загрузить измененные данные в документ


5-это у меня проблема
45 DexterMorgan
 
11.08.15
15:02
(44) По кнопке из обработки возвращай данные в документ и там добавляй
46 godmod80
 
11.08.15
15:04
(44) 3. вместе с данными загрузи ссылку на документ, ОМГ
47 DexterMorgan
 
11.08.15
15:04
(46) Че ты несешь?
48 DexterMorgan
 
11.08.15
15:05
(46) Я же написал тебе по ссылке ты получишь данные документа в БД, на форме может быть вообще все другое, какая нафиг ссылка
49 DexterMorgan
 
11.08.15
15:06
(44) Посмотри как в ут11 работает обработка "ЗагрузкаДанныхИзВнешнихФайлов" которая используется в куче документов
50 Nata3711
 
11.08.15
15:07
Ладно...
51 godmod80
 
11.08.15
15:10
(48) иначе она не сможет обновиться)
52 DexterMorgan
 
11.08.15
15:11
(51) кто она?
53 Gantosha
 
11.08.15
15:12
а там не через обработкувыбора сделано ??
в этом случае ей надо править форму документа.
54 Nata3711
 
11.08.15
15:16
Gantosha-Вы хотите сказать что в обработке, если нет выбора документа(куда будут загражаться данные), то без вариантов-НАДО МЕНЯТЬ ФОРМУ ДОКА?
55 godmod80
 
11.08.15
15:18
надо наверно кнопку с обработкой загрузки в док и где то хранить обработанные строки..
56 DexterMorgan
 
11.08.15
15:19
(54) Либо делать через внешнюю обраотку по типу: http://catalog.mista.ru/public/84119/ либо менять форму документа
59 Gantosha
 
11.08.15
15:20
нет, я просто комментирую по-поводу примера из ут 11.
я сам лично правлю форму документа и пишу в обработке выбора ..
можно ли иначе я не изощрялся .. наверное можно
просто не понятно как форму сохранять все то время пока вы там чтото обрабатываете
61 DexterMorgan
 
11.08.15
15:22
(59) Все правильно. ну еще можно открывать форму обработки модально, но это моветон =)
62 DexterMorgan
 
11.08.15
15:23
(60) О, гуру, поведай зачем мне сохранять документ для какого-то простого заполнения формы?
63 aka AMIGO
 
модератор
11.08.15
15:23
Сбавьте тональность разговора.
65 Nata3711
 
11.08.15
15:25
В принципе мне все ясно-  мне ночью по раскапывать самой..у меня ночью всегда вроде получалось....попробую еще раз...
66 godmod80
 
11.08.15
15:28
(62) да заполни форму и домой, а завтра проведешь док, ыы
67 godmod80
 
11.08.15
15:30
(65) вощем резюме , снимать конфу с поддержки и  без обработок все в модуле формы, доступ к элементам в коде по имени
68 aka AMIGO
 
11.08.15
15:33
(67) ИМХО - можно и не снимать, Обработку сделать внешней, а на её форму повесить реквизит - нужный документ.
69 Nata3711
 
11.08.15
15:36
это да....Мне хотелось без этого..ведь есть же без этого-вешать реквизит документа на форму
70 DexterMorgan
 
11.08.15
15:36
(66) ты наверное при добавление в тч строк тоже доработал документы своей конфы, чтобы проводились тут же
71 Nata3711
 
11.08.15
15:39
Документ в конфе я не переделывала..просто добавила кнопку вызова обработки.....Если я правильно поняла вопрос
72 Nata3711
 
11.08.15
15:39
кнопка в доке...
73 DexterMorgan
 
11.08.15
15:40
(69) Что по ссылке из (56) ты не понимаешь?
74 DexterMorgan
 
11.08.15
15:40
(71) Ладно кароче не хочешь слушать, продолжай тупить дальше, удачи
75 Gantosha
 
11.08.15
15:40
ну если кнопку в док добавила, то можешь и чуть чуть модуль формы подправить )
76 Gantosha
 
11.08.15
15:44
тебе в ссылке дали вообще изолированный код от конкретного документа .. все что он должен знать это только имена тех объектов которые ты правишь.
потом ты можешь работать не с формой, а с самими документом и передавать данные через него записывая его (это вот тебе сказали про работу через форму где есть реквизит с нужным тебе типом у которого через точку будет видна нужная тебе таблица)
ну а можно в обработке заполнения получить данные из одной формы и закинуть из в форму документа.
77 Gantosha
 
11.08.15
15:45
и еще ..каждый раз когда ты не правишь конфу ты делаешь ситуацию в которой ..все прекрасно работает, но зарплату тебе не платят .. так что подумай .. надо ли так делать)
78 Nata3711
 
11.08.15
16:22
Gantosha-
и еще ..каждый раз когда ты не правишь конфу ты делаешь ситуацию в которой ..все прекрасно работает, но зарплату тебе не платят .. так что подумай .. надо ли так делать)НЕ ПОНЯЛА
Имеешь ввиду что, надо посложней и "МУДРЕННОЕ"-что бы работодатель платил больше
79 Gantosha
 
11.08.15
16:28
не .. как раз править конфу это не самый мудреный способ - она как раз и сделана что-бы ее правили. А вот править что-то не правя конфу это уже сложнее.
Я конечно понимаю, что вы наверное не собираетесь жить с тему кому поправите этот документ , но надо же отдать себе отчет что ваша кнопочка вполне может принести денег не только сейчас , но и в будущем )
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.