Имя: Пароль:
1C
1С v8
Обработка
0 Singenor
 
12.10.12
14:36
Создал обработку, хочу чтобы по всем документам РТиУ пробегалась она, именно по ТЧ, по графе субконто, если значение заполнено, то ничего не выводит, если значение не заполнено, тогда выводит наименование документа, вот что получилось:
Процедура Узнать () Экспорт
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
              |    РеализацияТоваровУслуг.Проведен,
              |    РеализацияТоваровУслуг.Товары.(
              |        Субконто КАК Субконто
              |    ),
              |    РеализацияТоваровУслуг.Ссылка КАК ссылка
              |ИЗ
              |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг";
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
Если  ЗначениеЗаполнено(Результат.Товары.Субконто) Тогда
     Продолжить;
Иначе
ЭтотОбъект.(тут должна быть форма объекта, на которой располагается таблица, в которую должен выводиться результат) = Результат.Ссылка;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
1 maxmb
 
12.10.12
14:36
Прикольно
2 Singenor
 
12.10.12
14:37
Но не работает, пишет поле Субконто не найдено,отладчиком смотрел, видит:
Проведен, Товары, Ссылка
в Товарах нужно перейти на реквизит Субконто, но не получается( почему?
3 vicof
 
12.10.12
14:38
Выбирай из таблицы Документ.РеализацияТоваровУслуг.Товары
4 Singenor
 
12.10.12
14:40
(3) я разве не так выбираю?
5 vicof
 
12.10.12
14:41
ЫБРАТЬ
              |    РеализацияТоваровУслуг.Ссылка.Проведен,
              |    РеализацияТоваровУслуг.Номенклатура,
              |    РеализацияТоваровУслуг.Субконто,
              |    РеализацияТоваровУслуг.Ссылка КАК ссылка
              |ИЗ
              |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
6 Singenor
 
12.10.12
14:48
(5) точно, как теперь результат запроса выгружать в табличцу?
Пока Результат.Следующий() Цикл
Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
   Продолжить;
Иначе
ЭтотОбъект.ПолучитьФорму("ФормаОсновная");
ЭтотОбъект.ФормаОсновная = Результат.Ссылка;
       
КонецЕсли;
КонецЦикла;
КонецПроцедуры
как нить так, но не работает)
7 vicof
 
12.10.12
14:51
(6) копрокод.
В какую табличку?
8 Alex S D
 
12.10.12
14:51
че ??
9 Stim
 
12.10.12
14:51
сегодня что, пятница?
10 Singenor
 
12.10.12
14:52
Есть основная форма, на ней размещен элемент таблица, я хочу чтобы все значения, которые по результату запроса получаются, писались в эту табличку, то есть короче:
Есть документ РТиУ, в нем не стоит субконто, я хочу чтоб номер этого документа(ссылка не него) появилась у меня на форме, в таблице
11 Alex S D
 
12.10.12
14:53
твоятаблица = запрос.выполнить.выгрузить();
12 vicof
 
12.10.12
14:54
(10) Для  начала пойми разницу между элементами формы и данными. Потом свяжи табличное поле с таблицей значений и Выгружай данные в ТЗ
13 Aprobator
 
12.10.12
14:56
(0) при таком обходе правильно говорит.
14 Aprobator
 
12.10.12
14:57
нужна еще одна подвыборка. Потому как первая идет по самому документу и поле субконто там нет.
15 Aprobator
 
12.10.12
14:59

...
ТоварыЗапроса = Результат.Выбрать()
Пока Товары.Следующий()
........... // вот тут увидишь свое субконто
КонецЦикла;
16 Singenor
 
12.10.12
15:00
(15)
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий()  Цикл
       Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
            Продолжить;

тут он видит субконто, и идет по документам, только документы, у которых нет субконто он не выгружает в ТЗ
17 Aprobator
 
12.10.12
15:01
(16) по запросу в (0) этого не скажешь. Там все тащится.
18 Singenor
 
12.10.12
15:02
Запрос.Текст = "ВЫБРАТЬ
              |    РеализацияТоваровУслугТовары.Ссылка.Ссылка КАК Ссылка,
              |    РеализацияТоваровУслугТовары.Ссылка.Проведен,
              |    РеализацияТоваровУслугТовары.Номенклатура,
              |    РеализацияТоваровУслугТовары.Субконто КАК Субконто
              |ИЗ
              |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары";

запрос вот
19 Aprobator
 
12.10.12
15:03
(16) э а что мешает???
Результат.Ссылка не выгрузить?
20 Boleev v2
 
12.10.12
15:03
(18) делай все прямо в запросе, через ВЫБОР
21 Aprobator
 
12.10.12
15:04
(18) да запрос в принципе по барабану, учитывая то, что субконто может быть фиг знает какого типа.
22 Aprobator
 
12.10.12
15:04
(20) условие по субконто как в запросе задать?
23 Singenor
 
12.10.12
15:05
да какая разница какой тип данных у субконто, мне нужно чтобы просто проверялось,заполнено ли поле или нет
24 Aprobator
 
12.10.12
15:05
если субконто, только справочник или только документ, то можно конечно выйти из положения.
25 Singenor
 
12.10.12
15:05
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий()  Цикл
       Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
            Продолжить;
        Иначе
            Результат2 = Запрос.Выполнить().Выгрузить();
            ЭтотОбъект.ПолучитьФорму("ФормаОсновная");
            ЭтотОбъект.ФормаОсновная = Результат2.Ссылка;
        КонецЕсли;
    КонецЦикла;
сделал такой запрос, но чето все равно не то
26 Singenor
 
12.10.12
15:10
одна выборка отвечает за выбор данных из запроса, Результат называется
вторая, которая называется результат2 выгружает данные из запроса в таблицу значений, и мне теперь из эхтой таблицы значений нужно выгрузить данные в мою таблицу на форме, тип значений таблицы на форме - таблица значений, так ведь?
27 pavelul73
 
12.10.12
15:11
На форме, куда хочешь записывать документы без субконто есть реквизиты или табличная часть?
28 Aprobator
 
12.10.12
15:11
ну наверное так, только вот

.....
            ЭтотОбъект.ПолучитьФорму("ФормаОсновная");
            ЭтотОбъект.ФормаОсновная = Результат2.Ссылка;
....

чо за куйня, пардон?
29 pavelul73
 
12.10.12
15:12
или ты их пытаешься прям на форму записать?
30 pavelul73
 
12.10.12
15:12
создай в форме ТЧ, и выгружай запрос в эту ТЧ
31 Singenor
 
12.10.12
15:13
соз0дал на форме табличное поле, ив него хочу выгружать данные из запроса, но не понимаю как
32 pavelul73
 
12.10.12
15:13
тч.загрузить(результатзапроса)?
33 pavelul73
 
12.10.12
15:15
но в твоем случае вот это условие
Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
            Продолжить;
        Иначе
...
конецЕсли
как-то не очень. Лучше переделай запрос, чтобы он отбирал только те документы, где есть пустые строки субконто и этот уже запрос выгружай в своютч на форме
34 Aprobator
 
12.10.12
15:17
как в ТЗ загрузить результат запроса? Офигеть.
35 Aprobator
 
12.10.12
15:18
(33) угу - условие на пустое субконто можно в студию, если не известно с какого оно счета и не дай бог составного типа.
36 Singenor
 
12.10.12
15:19
Процедура Узнать () Экспорт
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
              |    РеализацияТоваровУслугТовары.Ссылка.Ссылка КАК Ссылка,
              |    РеализацияТоваровУслугТовары.Ссылка.Проведен,
              |    РеализацияТоваровУслугТовары.Номенклатура,
              |    РеализацияТоваровУслугТовары.Субконто КАК Субконто
              |ИЗ
              |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары";
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий()  Цикл
       Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
            Продолжить;
        Иначе
            ТЗ=Новый ТаблицаЗначений;
   ТЗ.Колонки.Добавить("ФизЛицо");
   ТЗ.Колонки.Добавить("Сумма");
   Строка=ТЗ.Добавить();
            Результат2 = Запрос.Выполнить().Выгрузить();
       ТЗ.Загрузить = Результат.Ссылка;
           
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры
37 Singenor
 
12.10.12
15:19
че то такое получилось
38 Singenor
 
12.10.12
15:20
тока не физлицо и сумма
а Документ мне только нужен
39 Singenor
 
12.10.12
15:20
|    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары";
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий()  Цикл
       Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
            Продолжить;
        Иначе
            ТЗ=Новый ТаблицаЗначений;
   ТЗ.Колонки.Добавить("Документ");
   Строка=ТЗ.Добавить();
            Результат2 = Запрос.Выполнить().Выгрузить();
       ТЗ.Загрузить = Результат.Ссылка;
           
        КонецЕсли;
40 hhhh
 
12.10.12
15:20
(33) да не нужна ему форма. Это он маханул чего-то, бредит. Просто пройтись по документам, заполнить незаполненные номенклатурные группы.
41 Singenor
 
12.10.12
15:21
(40) я хочу чтобы выдавались мне ссылки на документы, где не проставлены, у меня 10000 документов, и по каждому лазить как то напряжно, не считаешьтак?
42 Aprobator
 
12.10.12
15:23
(36) жуть. Лови.

...
ИмяРеквизитаТПоле = Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ИмяТП.СоздатьКолонки();
...
43 Aprobator
 
12.10.12
15:24
(40) т.е. тип субконто известен? Тогда вообще все в запросе практически делается.
44 hhhh
 
12.10.12
15:25
(41) всё равно ты должен в каждый документ записать. И провести. Групповой записи в несколько документов в 1С нет.
45 Singenor
 
12.10.12
15:26
бред какой то.
(43) почему так важна привязка к типу субконто? если мы просто проверяем заполнен он или нет, нам надо просто получить документы, в которых он не проставлен
46 Singenor
 
12.10.12
15:27
(44) мне нужно чтобы в форме выводился список доков, в которых нет субконто, я открыл один, проставил субконто, закрыл,открыл второй и т.д.
47 Aprobator
 
12.10.12
15:27
(44) пофиг. Всю нужную выборку с подменой сделаю в запросе. Потом только в цикле обойду и запишу в документ нужную инфу.
48 Aprobator
 
12.10.12
15:27
(46) поштучно руками? Садомазохист.
49 Aprobator
 
12.10.12
15:28
(44) а млин мазнул - ты не мне )
50 Singenor
 
12.10.12
15:28
(48), хм, а если мне нужно потом проставить во всех доках, где нет субконто одно и тоже для всех, к примеру, Субконто-Продукция
51 Singenor
 
12.10.12
15:29
в общем сначала
1. нужно выводить все доки, где нет субконто в принципе
2. во всех этих доках проставить автоматически субконто - Продукция
52 Aprobator
 
12.10.12
15:29
(50) ВЫБОР КОГДА .....
53 pavelul73
 
12.10.12
15:30
Используй Универсальную обработку "Групповая обработка справочников и документов"
54 Singenor
 
12.10.12
15:30
(53) нельзя этого сделать через эту обработку, я же писал уже
55 Singenor
 
12.10.12
15:35
Запрос.Текст = "ВЫБРАТЬ
              |    ВЫБОР
              |        КОГДА РеализацияТоваровУслугТовары.Субконто = НЕОПРЕДЕЛЕНО
              |            ТОГДА РеализацияТоваровУслугТовары.Ссылка.Ссылка
              |    КОНЕЦ КАК Ссылка,
              |    РеализацияТоваровУслугТовары.Ссылка.Проведен,
              |    РеализацияТоваровУслугТовары.Номенклатура,
              |    РеализацияТоваровУслугТовары.Субконто КАК Субконто
              |ИЗ
              |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары";
56 Singenor
 
12.10.12
15:35
Примерно так?)
57 jj369
 
12.10.12
15:35
ВЫБРАТЬ РАЗЛИЧНЫЕ
   РеализацияТоваровУслугТовары.Ссылка.Проведен,
   ПРЕДСТАВЛЕНИЕССЫЛКИ(РеализацияТоваровУслугТовары.Ссылка.Ссылка) КАК Представление
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
   ЕСТЬNULL(РеализацияТоваровУслугТовары.СубконтоБУ, "") = ""
58 del123
 
12.10.12
15:37
(54) А почему через обработку нельзя?
59 Aprobator
 
12.10.12
15:38
(58) он про ее настройку не знает.
60 pavelul73
 
12.10.12
15:40
(59) скорее всего, потому что через нее точно можно обратиться к ТЧ документа, найти пустые строки, и потом проставить во всех этих документах все что нужно
61 Singenor
 
12.10.12
15:40
хотя походу можно и обработкой групповой обойтись тут
62 Singenor
 
12.10.12
15:41
тока субконто берутся из планов видом характеристик, а когда мы меняем значение реквизита, то дают выбрать из справочника, документа, или перечислений
63 Singenor
 
12.10.12
15:41
http://pikucha.ru/i9kg7
вот на первой вкладке выбираем данные
64 Singenor
 
12.10.12
15:42
http://pikucha.ru/i9kg8
выбираем на второй, только какое значение я выберу?мне ведь из планов видов характеристик надо его
65 Singenor
 
12.10.12
15:44
или выбирать значение справочник, субконто, и вводить в этот справочник название субконто нашего, к примеру Продукты, и на таком отборе заменять реквизиты?
66 Singenor
 
12.10.12
15:44
хотя походу понялЖ, ща попробую
67 Singenor
 
12.10.12
15:46
да, получилось, групповая обработка спасла
68 del123
 
12.10.12
15:47
в итоге больше часа убил на то, что сделал за пару минут :)
69 Singenor
 
12.10.12
15:49
(68) заного нефиг изобретать велосипед потому что))
70 pavelul73
 
12.10.12
15:59
или мог сделать как предложили в (42)
только нужно было добавить:
МояПерем = Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ИмяТп.Значение = МояПерем;
ЭлементыФормы.ИмяТП.СоздатьКолонки();
71 Singenor
 
12.10.12
16:09
а элементыформы не предопределенный объект разве? {ВнешняяОбработка.ВнешняяОбработка1.МодульОбъекта(19)}: Поле объекта не обнаружено (ЭлементыФормы)
           ЭтотОбъект.ЭлементыФормы.ТЗ = ОбходРезультата;
72 Singenor
 
12.10.12
16:09
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий()  Цикл
       Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
           Продолжить;
       Иначе
           ОбходРезультата  = Запрос.Выполнить().Выгрузить();
           ЭтотОбъект.ЭлементыФормы.ТЗ = ОбходРезультата;                
           ЭтотОбъект.ЭлементыФормы.ТЗ.СоздатьКолонки();    
               
           КонецЕсли;
   КонецЦикла;
73 Singenor
 
12.10.12
16:10
ТЗ - данные у таблицыч на форме
74 pavelul73
 
12.10.12
16:14
ЭлементыФормы.ТЗ.Значение = ОбходРезультата;
75 Singenor
 
12.10.12
16:15
(74)
{ВнешняяОбработка.ВнешняяОбработка1.МодульОбъекта(19,4)}: Переменная не определена (ЭлементыФормы)
           <<?>>ЭлементыФормы.ТЗ = ОбходРезультата;                 (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка1.МодульОбъекта(20,4)}: Переменная не определена (ЭлементыФормы)
76 Singenor
 
12.10.12
16:15
из за того что в модуле объекта пишу? и он не видит там ТЧ?
77 pavelul73
 
12.10.12
16:15
и не пиши ЭтотОбъект,  пиши просто
ОбходРезультата = Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ТЗ.Значение = ОбходРезультата;
ЭлементыФормы.ТЗ.СоздатьКолонки();
78 Singenor
 
12.10.12
16:16
(77) он ругается на "ЭлементыФормы"
79 pavelul73
 
12.10.12
16:17
Замени ЭтотОбъект.ЭлементыФормы на просто ЭлементыФормы
80 pavelul73
 
12.10.12
16:17
Поля ЭлементФормы у ЭтотОбъект не существует
81 pavelul73
 
12.10.12
16:17
ЭлементыФормы - это объекты на твоей форме. Здесь не нужно использовать ЭтотОбъект
82 Singenor
 
12.10.12
16:18
83 Singenor
 
12.10.12
16:18
,kby? vjq rjczr? negk.
84 Singenor
 
12.10.12
16:18
мой косяк, туплю
85 Singenor
 
12.10.12
16:20
{Форма.ФормаОсновная.Форма(20)}: Поле объекта не обнаружено (ТЗ)
           ЭлементыФормы.ТЗ = ОбходРезультата;                

вот что пишет
86 pavelul73
 
12.10.12
16:21
Ты же в модуле пишешь, тогда нужно так:
МояФорма = ЭтотОбъект.ПолучитьФорму("Форма");
МояФорма.ЭлементыФормы.ТЗ.Значение = ОбходРезультата;
МояФорма.ЭлементыФормы.ТЗ.СоздатьКолонки();
87 hhhh
 
12.10.12
16:21
ЭлементыФормы.ТЗ.Значение - ну выходи уже из ступора, читай хоть, что тебе пишут.
88 Singenor
 
12.10.12
16:23
{Форма.ФормаОсновная.Форма(20)}: Поле объекта недоступно для записи (ТЧ)
           ЭлементыФормы.ТЧ = ОбходРезультата;
89 pavelul73
 
12.10.12
16:23
(82)и убери ЭлементыФормы.ТЗ.Колонки.Добавить() - это лишнее
90 pavelul73
 
12.10.12
16:24
блин, ты реально читаешь?
Напиши = ЭлементыФормы.ТЧ.ЗНАЧЕНИЕ=ОбходРезультата
91 pavelul73
 
12.10.12
16:26
Вот тебе рабочий пример:
На форме есть ТП называется МояТЧ

В модуле обработки выполняется следующий запрос:
Процедура НайтиЭл() Экспорт
   Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("ДатаНач",НачалоДня(ТекущаяДата()));
   Запрос.УстановитьПараметр("ДатаКон",КонецДня(ТекущаяДата()));
   Запрос.Текст =
   "ВЫБРАТЬ
   |    РеализацияТоваровУслуг.Ссылка
   |ИЗ
   |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
   |ГДЕ
   |    РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон
   |    И РеализацияТоваровУслуг.Проведен = ИСТИНА"  ;
   Колонка = Запрос.Выполнить().Выгрузить();
   МояФорма = ЭтотОбъект.ПолучитьФорму("Форма");
   МояФорма.ЭлементыФормы.МояТЧ.Значение = Колонка;
   МояФорма.ЭлементыФормы.МояТЧ.СоздатьКолонки();

   КонецПроцедуры
92 pavelul73
 
12.10.12
16:27
и на форме ТП заполняется ссылками документов,которые отбираются в запросе
93 Singenor
 
12.10.12
16:29
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий()  Цикл
Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
Продолжить;
Иначе
ОбходРезультата  = Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ТЧ.Значение = ОбходРезультата;                
ЭлементыФормы.ТЧ.СоздатьКолонки();    
КонецЕсли;
КонецЦикла;
94 Singenor
 
12.10.12
16:29
и ничего не происходит, код работает, но результатом не заполняет ТЧ
95 Singenor
 
12.10.12
16:34
Вот целиком код:



Процедура КнопкаВыполнитьНажатие(Кнопка)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
              |    РеализацияТоваровУслугТовары.Ссылка.Проведен,
              |    РеализацияТоваровУслугТовары.Субконто КАК Субконто,
              |    РеализацияТоваровУслугТовары.Ссылка
              |ИЗ
              |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары";
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий()  Цикл
       Если  ЗначениеЗаполнено(Результат.Субконто) Тогда
           Продолжить;
       Иначе
           ОбходРезультата  = Запрос.Выполнить().Выгрузить();
           ЭлементыФормы.ТЧ.СоздатьКолонки();
           ЭлементыФормы.ТЧ.Значение = ОбходРезультата;                
               
           КонецЕсли;
   КонецЦикла;


КонецПроцедуры
96 Singenor
 
12.10.12
16:41
как сделать то, чтоб на форме ТЧ заполнялась?
97 Singenor
 
12.10.12
16:47
м?
98 del123
 
12.10.12
16:48
Жесть какая))
99 del123
 
12.10.12
16:49
в иначе запихай добавление строки во временную таблицу. После обхода результата уже выгружай временную таблицу на форму.
100 Singenor
 
12.10.12
16:53
Иначе
           ВременнаяТаблица = Новый МенеджерВременныхТаблиц;
           Запрос.МенеджерВременныхТаблиц = ВременнаяТаблица;
           Запрос.Выполнить().Выгрузить();
           ЭлементыФормы.ТЧ.Значение = Запрос;
           ЭлементыФормы.ТЧ.СоздатьКолонки();
                               
           КонецЕсли;
   КонецЦикла;
101 Singenor
 
12.10.12
16:53
не помогает
102 del123
 
12.10.12
16:56
ыыы
103 Singenor
 
12.10.12
16:57
что не так? не понимаю
104 Singenor
 
12.10.12
17:04
короче пофиг, групповая обработка рулит
105 del123
 
12.10.12
17:07
Процедура КнопкаВыполнитьНажатие(Кнопка)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
              |    РеализацияТоваровУслугТовары.Ссылка.Проведен,
              |    РеализацияТоваровУслугТовары.Субконто КАК Субконто,
              |    РеализацияТоваровУслугТовары.Ссылка
              |ИЗ
              |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары";
Результат = Запрос.Выполнить().Выгрузить();

ТекПоз = 0;

Пока ТекПоз < Результат.Количество() цикл
       Если ЗначениеЗаполнено(Результат[ТекПоз].Субконто) Тогда
           ТекПоз = ТекПоз + 1;
       Иначе
            Результат.Удалить(ТекПоз);
       КонецЕсли;
КонецЦикла;

ЭлементыФормы.ТЧ.Значение = Результат;                
ЭлементыФормы.ТЧ.СоздатьКолонки();

КонецПроцедуры
106 del123
 
12.10.12
17:07
как то так
107 Singenor
 
12.10.12
17:09
без тек позиции никак?
108 Singenor
 
12.10.12
17:10
(105) да и все равно он не работает, результата не выдает ни какого
109 del123
 
12.10.12
17:17
забей тогда)
110 zladenuw
 
12.10.12
17:17
ты на сервере пытаешься обновить ? или где ?
111 Singenor
 
12.10.12
17:20
(110) на каком сервере, у меня база на моем копьютере стоит, никаких серверов ничего, обычное приложение, и у меня не выводится результат запроса в табличное поле, вот в чем проблема, предложенный выше код некоторыми людьми форума не работает, ничего не выводится
112 hhhh
 
12.10.12
17:25
(111) вот здесь похоже на бред

Пока Результат.Следующий()  Цикл
...
           ОбходРезультата  = Запрос.Выполнить().Выгрузить();


то есть ты одну и ту же таблицу записываешь 10000 раз и на одно и то же место. Там наверно компьютер задымился уже.
113 Singenor
 
12.10.12
17:27
(112) так в итоге он ведь хоть что нить должен мне выдать, а в итоге ТП пусто на форме
114 pavelul73
 
12.10.12
17:30
Сделай запрос, чтобы он выбирал только те документы где субконто пустое и выводи все на форму без всяких исключений и если
115 hhhh
 
12.10.12
17:30
(113) а если так

ТЧ.Загрузить(Запрос.Выполнить().Выгрузить());
116 zladenuw
 
12.10.12
17:30
ЭлементыФормы.ТабЗначЗаказ.Значение = ОбработкаВыполненияЗаявок(Отказ);
   ЭлементыФормы.ТабЗначЗаказ.СоздатьКолонки();
Функция ОбработкаВыполненияЗаявок(пОтказ = Ложь) Экспорт
   Запрос = Новый Запрос("ВЫБРАТЬ
                         |    ЗаказЗЧ.ДокЗаказ КАК ДокЗаказ,
                         |    ЗаказЗЧ.ЗЧ,        

                         |    ЗаказЗЧ.ЗаказКво
                         |ИЗ
                         |    РегистрСведений.ЗаказЗЧ КАК ЗаказЗЧ
                         |ГДЕ
                         |    (НЕ ЗаказЗЧ.Выполнен)
                         |    И ЗаказЗЧ.ДокЗаказ.ПринялЗаказ = ЗНАЧЕНИЕ(Справочник.Сотрудники.ПустаяСсылка)
                         |
                         |СГРУППИРОВАТЬ ПО
                         |    ЗаказЗЧ.Кво,
                         |    ЗаказЗЧ.ЗаказКво,
                         |    ЗаказЗЧ.ДокЗаказ,
                         |    ЗаказЗЧ.ЗЧ
                   |ИТОГИ ПО
                         |    ДокЗаказ");
       РезЗапроса = Запрос.Выполнить();
   Выборка=РезЗапроса.Выбрать();
   ТабЗначЗаказ = Новый ДеревоЗначений;
   ТабЗначЗаказ.Колонки.Очистить();
   ТабЗначЗаказ.Колонки.Добавить("Товар");
   ТабЗначЗаказ.Колонки.Добавить("Заказано");
     Если НЕ РезЗапроса.Пустой() Тогда
       ТабЗначЗаказ = Новый ДеревоЗначений;
       ТабЗначЗаказ.Колонки.Очистить();
       ТабЗначЗаказ.Колонки.Добавить("Товар");
       ТабЗначЗаказ.Колонки.Добавить("Заказано");
       ТабЗначЗаказ.Колонки.Добавить("Заказ");
       
       ВыборкаКлиент = РезЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
       Пока ВыборкаКлиент.Следующий() Цикл
           
           СтрокаВерхнегоУровня = ТабЗначЗаказ.Строки.Добавить();
           СтрокаВерхнегоУровня.Товар = Строка(ВыборкаКлиент.ДокЗаказ);
           СтрокаВерхнегоУровня.Заказ = ВыборкаКлиент.ДокЗаказ;
           ВыдатьДочерниеЗаписи(ВыборкаКлиент.Выбрать(),СтрокаВерхнегоУровня);
       КонецЦикла;
   Иначе        
       пОтказ =  Истина;
   КонецЕсли;
   Возврат ТабЗначЗаказ;                

       
КонецФункции // ОбработкаВыполненияЗаявок()

Все выводить и создает.
117 pavelul73
 
12.10.12
17:32
(115) у него не ТЧ, а ТП, у ТП вроде нет метода загрузить, есть только загрузитьКолонку, вроде как
118 Aprobator
 
12.10.12
18:04
)))))))))))) мля я ща уписаюсь.
119 Aprobator
 
12.10.12
18:09
(117) ТЧ имя реквизита формы связанного с табличным полем. Тип значения таблица значений.

ТЧ = Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ИмяТПСвязанногоСТЧ.СоздатьКолонки();