|
самый правильный способ получить структуру из результата запроса | ☑ | ||
---|---|---|---|---|
0
e2e4
10.07.15
✎
16:33
|
Продолжаем серию "про самые правильные приемы в 1С"))
По сабжу я сделал так: //замутили запрос и все такое //... РезультатЗапроса = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); ВыборкаДетальныеЗаписи.Следующий(); //у меня запрос возвращает ровно 1 строку - так что обойдемся без цикла СтруктураДанных = Новый Структура; Для каждого Колонка Из РезультатЗапроса.Колонки Цикл СтруктураДанных.Вставить(Колонка.Имя,ВыборкаДетальныеЗаписи[Колонка.Имя]); КонецЦикла; //наслаждаемся ...Красиво? Или так только такие чайники, как я, делают??? |
|||
1
ДенисЧ
10.07.15
✎
16:44
|
Последнее
|
|||
2
hhhh
10.07.15
✎
16:51
|
(0) новейшее ноухау. Учитесь:
ОбластьСтроки.Параметры.Заполнить(Новый Структура("Цена", Цена)); ОбластьМакета.Параметры.Заполнить(Новый Структура("Всего", Всего)); |
|||
3
DexterMorgan
10.07.15
✎
16:52
|
надо писать
Если ВыборкаДетальныеЗаписи.Следующий() Тогда бла бла бла если запрос не вернет ни одной записи получишь ошибку в своем коде |
|||
4
Ненавижу 1С
гуру
10.07.15
✎
16:54
|
(3) есть запросы гарантирующие вывод ровно одной строки
|
|||
5
1sanekmaloi1
10.07.15
✎
16:56
|
(4) А есть запросы НЕ гарантирующие и там будет ошибка.
|
|||
6
Ненавижу 1С
гуру
10.07.15
✎
16:56
|
(5) совершенно верно
|
|||
7
Casey1984
10.07.15
✎
17:00
|
(2) бугуага, смотри как надо:
ЗаполнитьЗначениеСвойств(ТабЗнач.Добавить(), Новый Структура("Колонка1, Колонка2, Колонка3", "блаблабла", 123, СсылкаНаДок); |
|||
8
commdt
10.07.15
✎
17:00
|
Как-то изголялся по этой теме, получилось вот что
ЗапросСтатьи = Новый Запрос; ЗапросСтатьи.Текст = "ВЫБРАТЬ | СтатьиДДСДляАвтоподстановки.ВидСтатьи КАК ВидСтатьи, | СтатьиДДСДляАвтоподстановки.Статья КАК Статья |ИЗ | РегистрСведений.СтатьиДДСДляАвтоподстановки КАК СтатьиДДСДляАвтоподстановки"; РезультатСтатьи = ЗапросСтатьи.Выполнить().Выгрузить(); СтатьиОплаты = Новый Структура; Для каждого Строка из РезультатСтатьи Цикл СтатьиОплаты.Вставить(СтрЗаменить(Строка(Строка.ВидСтатьи)," ",""),Строка.Статья); КонецЦикла; ВидСтатьи - Перечисление. Строк может быть сколько угодно (сейчас две) |
|||
9
hhhh
10.07.15
✎
17:06
|
(7) ты не понял, это код из БСП. В Бух 3.0 таких строчек десятки тысяч. И ТС должен перенимать передовой опыт.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |