|
Передача ТаблицыЗначений в запросе | ☑ | ||
---|---|---|---|---|
0
Alexsey58
10.10.12
✎
10:53
|
Имеется ТаблицаЗначений содержащие документы ЗаказПокупателя, нужно создать документы, пишу через запрос, документы создаются, но в таблицу записывается весь товар, как сделать чтобы сортировался по Заказу документа, всю неделю вожусь не чего не поучается,
вот мой код: Для Каждого ТЗКл Из ТЗ Цикл Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; МенеджерТаблицыДанных = Запрос.МенеджерВременныхТаблиц; Запрос.Текст = "ВЫБРАТЬ | ТЗ.Заказ КАК Заказ, | ТЗ.Контрагент КАК Контрагент, | ТЗ.Артикул КАК Артикул, | ТЗ.Производитель КАК Производитель, | ТЗ.Цена КАК Цена, | ТЗ.Сумма КАК Сумма, | ТЗ.Оплачено КАК Оплачено, | ТЗ.Долг КАК Долг, | ТЗ.Номенклатура КАК Номенклатура, | ТЗ.Количество КАК Количество |ПОМЕСТИТЬ ВремТаб_ТЗ |ИЗ | &ТЗ КАК ТЗ |"; Запрос.УстановитьПараметр("ТЗ", ТЗ); Запрос.Выполнить(); ЗапросКбазеДанных = Новый Запрос; ЗапросКбазеДанных.МенеджерВременныхТаблиц = МенеджерТаблицыДанных; ЗапросКбазеДанных.Текст = "ВЫБРАТЬ | ВремТаб_ТЗ.Заказ, | ВремТаб_ТЗ.Контрагент, | ВремТаб_ТЗ.Артикул, | ВремТаб_ТЗ.Производитель, | ВремТаб_ТЗ.Цена, | ВремТаб_ТЗ.Сумма, | ВремТаб_ТЗ.Оплачено, | ВремТаб_ТЗ.Долг, | ВремТаб_ТЗ.Номенклатура, | ВремТаб_ТЗ.Количество, | ЗаказПокупателя.Заказ КАК ЗаказКл |ИЗ | ВремТаб_ТЗ КАК ВремТаб_ТЗ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя | ПО ВремТаб_ТЗ.Заказ = ЗаказПокупателя.Заказ |"; Выборка = ЗапросКбазеДанных.Выполнить().Выбрать(); Докум = Документы.ЗаказПокупателя.СоздатьДокумент(); Докум.Заказ = ТЗКл.Заказ; Докум.Контрагент = ТЗКл.Контрагент; ТаблЧасть = Докум.Товары; ТаблЧасть.Очистить(); Пока Выборка.Следующий() Цикл Строка = ТаблЧасть.Добавить(); Строка.Артикул = Выборка.Артикул; Строка.Номенклатура = Выборка.Номенклатура; Строка.Производитель = Выборка.Производитель; Строка.Цена = Выборка.Цена; Строка.Сумма = Выборка.Сумма; Строка.Количество = Выборка.Количество; Строка.Оплачено = Выборка.Оплачено; Строка.Долг = Выборка.Долг; КонецЦикла; ФормадокументаЗаказКл = Докум.ПолучитьФорму(); ////ФормадокументаЗаказКл.Записать(); ФормадокументаЗаказКл.Открыть(); КонецЦикла; |
|||
1
Нуф-Нуф
10.10.12
✎
10:54
|
ужаснах
|
|||
2
DrShad
10.10.12
✎
10:55
|
(0) что за адский отжиг
|
|||
3
GLazNik
10.10.12
✎
10:56
|
Нифига не понял...
"но в таблицу записывается весь товар, как сделать чтобы сортировался по Заказу документа". Что таки надо? сортировать или еще чего? |
|||
4
Галахад
гуру
10.10.12
✎
10:57
|
Наверное тута:
Запрос.УстановитьПараметр("ТЗ", ТЗКл); |
|||
5
DrShad
10.10.12
✎
10:58
|
(4) т.е. ты предлагаешь передавать в запрос строку ТЗ?
|
|||
6
Галахад
гуру
10.10.12
✎
10:59
|
(5) Ага. Цикл же есть. Зачем он иначе?
|
|||
7
Лефмихалыч
10.10.12
✎
10:59
|
(0) ни чего не понятно. Чего ты добиться хочешь?
|
|||
8
чеширский кот
10.10.12
✎
11:00
|
А вообще это накой фиг надо то?
|
|||
9
DrShad
10.10.12
✎
11:01
|
(6) т.е. у тебя запросы умеют в качестве истоника данных хавать строки ТЗ?
|
|||
10
Галахад
гуру
10.10.12
✎
11:04
|
(9) А, ну да. Тогда наверное так ТЗКл.ТЗ
|
|||
11
Alexsey58
10.10.12
✎
11:04
|
есть xml-файл, нужно загружать его в 1с, в xml-файл содержит документ ЗаказПокупателя, т.к. документов за день может достигать 100 документов, решил сделать через запрос, выгрузил в ТаблицуЗначений и потом перенес в запрос,
стнруктура ТаблицыЗначений токава ТЗ = новый ТаблицаЗначений; ТЗ.Колонки.Добавить("Заказ", Новый ОписаниеТипов("Строка")); ТЗ.Колонки.Добавить("Контрагент", Новый ОписаниеТипов("СправочникСсылка.Контрагенты")); ТЗ.Колонки.Добавить("Ожидается", Новый ОписаниеТипов("Дата")); ТЗ.Колонки.Добавить("Баланс", Новый ОписаниеТипов("Число")); ТЗ.Колонки.Добавить("Срок", Новый ОписаниеТипов("Число")); ТЗ.Колонки.Добавить("ГарСрок", Новый ОписаниеТипов("Число")); ТЗ.Колонки.Добавить("Направление", Новый ОписаниеТипов("Строка")); ТЗ.Колонки.Добавить("Комментарий", Новый ОписаниеТипов("Строка")); ТЗ.Колонки.Добавить("Артикул", Новый ОписаниеТипов("Строка")); ТЗ.Колонки.Добавить("Производитель", Новый ОписаниеТипов("Строка")); ТЗ.Колонки.Добавить("Цена", Новый ОписаниеТипов("Строка")); ТЗ.Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число")); ТЗ.Колонки.Добавить("Оплачено", Новый ОписаниеТипов("Число")); ТЗ.Колонки.Добавить("Долг", Новый ОписаниеТипов("Число")); ТЗ.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("СправочникСсылка.Номенклатура")); ТЗ.Колонки.Добавить("Склад", Новый ОписаниеТипов("СправочникСсылка.Склады")); ТЗ.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число")); контрагент, заказывает несколько позиции товара, в ТЗ это отображается как отдельная строка, вот нужно сделать отбор по "Заказу" |
|||
12
pumbaEO
10.10.12
✎
11:08
|
100 заказов? Фигня.
|
|||
13
Галахад
гуру
10.10.12
✎
11:08
|
О, почти угадал.
|
|||
14
DrShad
10.10.12
✎
11:09
|
(11) грузи сразу из XML и не парь мозг людям
|
|||
15
DrShad
10.10.12
✎
11:09
|
(13) что ты угадал? иди мотивацию свою повышай
|
|||
16
чеширский кот
10.10.12
✎
11:09
|
Ну просто не вижу смысла. Ты то уже на стадии загрузки из xml сформировал таблицу значений, зачем еще раз её "маслать"
|
|||
17
чеширский кот
10.10.12
✎
11:10
|
В первую очередь упорядочить таблицу по заказу
|
|||
18
Галахад
гуру
10.10.12
✎
11:11
|
(15) Чо нервный такой?
|
|||
19
DrShad
10.10.12
✎
11:11
|
(16) зачем ее вообще создавать? тупо на чтении XML писать документы
|
|||
20
DrShad
10.10.12
✎
11:11
|
(18) не тупи
|
|||
21
чеширский кот
10.10.12
✎
11:13
|
(19) Тоже логично. Но лучше когда есть стресоустойчивость кода.
|
|||
22
чеширский кот
10.10.12
✎
11:14
|
Создание документов при чтении может выйти боком даже при использовании исключительных ситуаций!
|
|||
23
DrShad
10.10.12
✎
11:15
|
(22) да ладно!? а как же тогда обмены проходят?
|
|||
24
Alexsey58
10.10.12
✎
11:15
|
100 заказов в среднем, был один день xml содержал 1000 заказов, выгрузку напрямую проше реализовать но не надежно
|
|||
25
Галахад
гуру
10.10.12
✎
11:16
|
(20) Почему нет? Именно этим я сейчас и занимаюсь. Туплю в Инете. Ты тоже.
|
|||
26
чеширский кот
10.10.12
✎
11:17
|
(23) Проходят, согласен. И очень много в них смущает!
|
|||
27
DrShad
10.10.12
✎
11:21
|
(26) например? имхается ты просто не умеешь их готовить
|
|||
28
чеширский кот
10.10.12
✎
11:21
|
У тебя в ТЗ.Заказ что конкретно попадает?
|
|||
29
DrShad
10.10.12
✎
11:22
|
(28) судя по коду какая-то строка
|
|||
30
чеширский кот
10.10.12
✎
11:24
|
(29) Строка понятно. Код заказа или например "Заказ №24 от 10.10.12"
|
|||
31
pumbaEO
10.10.12
✎
11:26
|
(30) а какая разница ?
|
|||
32
DrShad
10.10.12
✎
11:27
|
(31) +1, имхо однокуйственно
|
|||
33
Alexsey58
10.10.12
✎
11:27
|
строка "А1-5225/3077"
|
|||
34
чеширский кот
10.10.12
✎
11:28
|
(31) решил уточнить ... код я тута пишу
|
|||
35
DrShad
10.10.12
✎
11:29
|
(34) решил за него написать!?
|
|||
36
pumbaEO
10.10.12
✎
11:31
|
(35) а что там писать, 3 конструктора вызвать.
|
|||
37
чеширский кот
10.10.12
✎
11:32
|
Для Каждого ТекСтрока Из ТаблицаЗначений Цикл
ИскомыйЗаказ = Документы.ЗаказПокупателя.НайтиПоНомеру(ТекСтрока.Заказ); Если ИскомыйЗаказ = Неопределено Тогда НовыйДокумент = Документы.ЗаказПокупателя.СоздатьДокумент(); //Присваиваем реквизиты шапки НоваяСтрокаДокумента = НовыйДокумент.Товары.Добавить(); //Присваиваем реквизиты строки Иначе НоваяСтрокаДокумента = ИскомыйЗаказ.Товары.Добавить(); //Присваиваем реквизиты строки КонецЕсли; КонецЦикла; |
|||
38
чеширский кот
10.10.12
✎
11:33
|
Принцип ясен?
|
|||
39
DrShad
10.10.12
✎
11:33
|
(37) ужас не менее адский
|
|||
40
чеширский кот
10.10.12
✎
11:34
|
(39) Чем тебя пугает "принцип топора" ?
|
|||
41
pumbaEO
10.10.12
✎
11:35
|
(37) свойства в типовых не для того сделанны, что бы потом искать заказы по номеру документа.
|
|||
42
чеширский кот
10.10.12
✎
11:35
|
ОООО ... хотя можно по другому
|
|||
43
чеширский кот
10.10.12
✎
11:36
|
(41) жду твоего варианта
|
|||
44
чеширский кот
10.10.12
✎
11:36
|
мне всегда приятно узнать что то новое 8)
|
|||
45
Alexsey58
10.10.12
✎
11:37
|
запрос выкидывать?, так суть ясна
|
|||
46
Alexsey58
10.10.12
✎
11:38
|
просто некоторые предлогали, выгрузит в ТЗ потом через запрос загружать в документ
|
|||
47
чеширский кот
10.10.12
✎
11:44
|
тип базы какой?
|
|||
48
Alexsey58
10.10.12
✎
11:54
|
загрузка с интернет-магазина по xml-файлу, 1с на postgreSQL, так-как, база будет рости постоянно
|
|||
49
sttt
10.10.12
✎
12:40
|
да уж, а я без работы сижу... что делаю не так?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |