|
Как получить индекс строки выборки результата запроса? | ☑ | ||
---|---|---|---|---|
0
Сияющий Асинхраль
16.11.18
✎
17:12
|
У Выборки запроса есть функция Получить(<Индекс>), вопрос в том как получить Индекс произвольной строки запроса, скажем той на которой спозиционирован в настоящий момент?
|
|||
1
formista2000
16.11.18
✎
17:14
|
(0) Своё счетчик в цикле.
|
|||
2
Сияющий Асинхраль
16.11.18
✎
17:18
|
(1) Проблемка в том, что выборка идет не совсем последовательно, поэтому и встал вопрос по поводу Получить()
|
|||
3
RomanYS
16.11.18
✎
17:19
|
(0) Это не с строке относится, к полю (=колонке).
|
|||
4
formista2000
16.11.18
✎
17:21
|
(2) Какая разница? Во всех местах, где двигаешься по выборке .Следующий() ставь счётчик = счетчик + 1 и будет тебе щастье!
|
|||
5
RomanYS
16.11.18
✎
17:21
|
Выборка[0] == Выборка[ИмяПервойКолонки] == Выборка.Получить(0)
|
|||
6
Сияющий Асинхраль
16.11.18
✎
17:21
|
(3) Это ближе к истине :-( . Т.е. получается никак нельзя позиционироваться на точной строке выборки?
|
|||
7
RomanYS
16.11.18
✎
17:22
|
(6) только перебором или поиском
|
|||
8
Ёпрст
16.11.18
✎
17:22
|
(4) он может двигаться через найтиСледующий и тут обломинго со счётчиком
|
|||
9
Сияющий Асинхраль
16.11.18
✎
17:23
|
(7) Понятно. Спасибо...
|
|||
10
RomanYS
16.11.18
✎
17:23
|
(9) если нужно по индексу строки - выгружай в ТЗ (если возможно)
|
|||
11
Сияющий Асинхраль
16.11.18
✎
17:25
|
(8) Именно так и двигаюсь :-( ... Просто не хотел полностью переписывать типовые печатные формы. Ищу методу отделаться минимальными изменениями... Но покамест номер с "минимумом" изменений не катит :-(
(10) Про ТЗ помню всегда :-(, одна беда, под это дело надо кучу типового кода переделывать... :-( |
|||
12
Ёпрст
16.11.18
✎
17:26
|
Цель то какая ? Если обходишь через НайтиСледующий или через СледующийПоЗначениюПоля то тупо делай Сбросить() потом
|
|||
13
RomanYS
16.11.18
✎
17:26
|
(11) всю задачу обрисуй
|
|||
14
Сияющий Асинхраль
16.11.18
✎
17:30
|
В типовой форме испольуется последовательно сначала Шапка.СледующийПоЗначениюПоля() - тут выбираются реквизиты Шапки, после чего циклом идет перебор реквизитов ТЧ
Пока Шапка.Следующий() Цикл КонецЦикла; Мне надо несколько раз пробежаться как по шапке, так и по ТЧ, просто тупо вывести одну и ту же печатную форму несколько раз в зависимости от настроек контрагента в шапке документа, а пока оказывается, что Сбросить() - сбрасывает в самое начало, что не то... |
|||
15
Ёпрст
16.11.18
✎
17:32
|
(14) почему не то ? После сброса делай найтиПоЗначениюПоля и всё по новой.
|
|||
16
Ёпрст
16.11.18
✎
17:34
|
всё равно же накладываешь условие на позиционирование выборки
|
|||
17
RomanYS
16.11.18
✎
17:34
|
(14) может запрос поправить чтобы возвращал нужное "в зависимости от настроек контрагента"?
|
|||
18
Сияющий Асинхраль
16.11.18
✎
17:34
|
Вот СледующийПоЗначениюПоля в справке вижу, а НайтиПоЗначениюПоля - нет :-( , Или не верить глазам своим?
|
|||
19
Ёпрст
16.11.18
✎
17:35
|
ну или Итоги добавь в запрос и обходи его по группировкам - отдельно шапку, отдельно строки..
|
|||
20
youalex
16.11.18
✎
17:35
|
(18) НайтиСледующий()
|
|||
21
Ёпрст
16.11.18
✎
17:36
|
(18) ну шо я тебе, все константы помнить должен ? :)
|
|||
22
Сияющий Асинхраль
16.11.18
✎
17:38
|
(17-19) Это да, с этим согласен. Просто у меня под десяток печатных форм такого плана (причем не самых простеньких), типа Счетов-фактур, Торг-12 и т.д. Вот я и ищу методу отделаться минимальными правками :-(
(21) Не, к тебе вопросов нет, я с тобой тут на 150% согласен - сам не помню :-) |
|||
23
RomanYS
16.11.18
✎
17:42
|
(22) А что за конфа? Может как-то пересобирать готовый ТД проще чем сразу выводить как надо?
|
|||
24
Сияющий Асинхраль
16.11.18
✎
17:44
|
(23) Хлебозавод на типовой бухе... Правда, чем дальше, тем все более нетиповой становится эта конфа :-(
|
|||
25
Вафель
16.11.18
✎
17:45
|
зачем несколько раз? может проще запомнить выводи скопировать нужное количество раз?
|
|||
26
Вафель
16.11.18
✎
17:45
|
если делаешь несколько доков, то номера строк в таблице сохраняются
|
|||
27
Сияющий Асинхраль
16.11.18
✎
17:47
|
(25) В принципе по поводу копирования мне идея нравится, надо будет обмозговать. Вполне может быть, что и прокатит...
|
|||
28
Сияющий Асинхраль
16.11.18
✎
17:51
|
(26) Идея такая, что мне надо одним блоком распечатать табличные формы по целой куче Реализаций одновременно, причем, в реализациях разные контрагенты, которым нужен разный набор печатных форм и разное количество самих этих печатных документов. В типовом варианте есть возможность задавать количество одинаковым для всех, вот эту задачку я и пытаюсь сейчас победить...
|
|||
29
RomanYS
16.11.18
✎
17:52
|
(24) БП2 или БП3?
|
|||
30
Сияющий Асинхраль
16.11.18
✎
17:52
|
(29) БП3
|
|||
31
Ёпрст
16.11.18
✎
17:54
|
(28) дык проще печатать обработкой, а количество экземпляров печ форм хранить в рег. сведений каком-ниить или в свойствах клиентоса. И в самой печ форме смотреть, если есть свойство/значение в рег. сведений, то ставим столько то копий/ портрет/ландшафт..
ЗЫ: у нас так, к примеру. |
|||
32
RomanYS
16.11.18
✎
17:54
|
(30) В БП3 (бсп) вижу функцию
Процедура ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, Ссылка) Экспорт Элемент = ОбъектыПечати.НайтиПоЗначению(Ссылка); Если Элемент = Неопределено Тогда ИмяОбласти = "Документ_" + Формат(ОбъектыПечати.Количество() + 1, "ЧН=; ЧГ="); ОбъектыПечати.Добавить(Ссылка, ИмяОбласти); Иначе ИмяОбласти = Элемент.Представление; КонецЕсли; НомерСтрокиОкончание = ТабличныйДокумент.ВысотаТаблицы; ТабличныйДокумент.Область(НомерСтрокиНачало, , НомерСтрокиОкончание, ).Имя = ИмяОбласти; КонецПроцедуры возможно она сильно тебе упростит задачу пересборки/копирования |
|||
33
Сияющий Асинхраль
16.11.18
✎
17:56
|
(31) Ну, я, строго говоря и делаю нечто подобное, т.е. из отдельной обработки. Просто не переписывать же полностью формирование печатных форм, там печать обычной счет-фактуры больше чем на 4000 строк. Вот пытаюсь сохранить типовые способы печати - ну, насколько можно, конечно...
|
|||
34
Сияющий Асинхраль
16.11.18
✎
17:59
|
(32) Это тоже понадобиться. Спасибо!!! Уже неделю развлекаюсь с печатной подсистемой от 1С :-) , может устал под конец недели...
|
|||
35
RomanYS
16.11.18
✎
18:02
|
(34) всё что тебе нужно уже разложено по полочкам, или может быть разложено. Отпишись, что получится.
Меня эти "ОбъектыПечати" давно интересовали, лень посмотреть что там и зачем. Похоже именно для таких случаев |
|||
36
Ёпрст
16.11.18
✎
18:03
|
(33) Да пофик, сколько там строк. Делаешь впф, там чутка поправить код, чтоб в зависимости от параметров либо сохраняла табдок в файло в нужном формате, либо печатала + вещи типа количестваЭкземпляров и ориентацию.
И потом печатаешь групповой обработкой печати, в которую добавить выбор нескольких печформ в отдельной ТЗ. Усё. |
|||
37
Ёпрст
16.11.18
✎
18:12
|
Тип того:
http://pics.rsh.ru/img/_km838qbd.png |
|||
38
Сияющий Асинхраль
16.11.18
✎
18:19
|
(37) Да, что-то подобное и творю...
(35) Отпишусь. На функцию из (32) я сегодня несколько раз выходил по отладке, но видимо уставший не обратил на нее внимание, а сейчас подумал - да, как-то уж очень она удобна для моих задач. Расскажу, что получится... |
|||
39
Сияющий Асинхраль
16.11.18
✎
18:21
|
+(35) Уж больно в эту функцию удобно куски для копирования вставлять, тут ты очень прав...
|
|||
40
RomanYS
16.11.18
✎
19:20
|
Странно что Зак не пришел, и не предложил всё по Эдо отпралять) может заголовок слишком неприметный
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |