Имя: Пароль:
1C
 
Как получить индекс строки выборки результата запроса?
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
38 Сияющий Асинхраль
 
16.11.18
18:19
(37) Да, что-то подобное и творю...
(35) Отпишусь. На функцию из (32) я сегодня несколько раз выходил по отладке, но видимо уставший не обратил на нее внимание, а сейчас подумал - да, как-то уж очень она удобна для моих задач. Расскажу, что получится...
39 Сияющий Асинхраль
 
16.11.18
18:21
+(35) Уж больно в эту функцию удобно куски для копирования вставлять, тут ты очень прав...
40 RomanYS
 
16.11.18
19:20
Странно что Зак не пришел, и не предложил всё по Эдо отпралять) может заголовок слишком неприметный