Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: 1С для программиста

  Все выпуски  

RusFAQ.ru: 1С для программиста


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / 1С для программиста

Выпуск № 711
от 26.01.2008, 12:00

Администратор:Калашников О.А.
В рассылке:Подписчиков: 384, Экспертов: 48
В номере:Вопросов: 3, Ответов: 5

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 119496: Доброго времени. Существует документ: РеализацияГСМ, к нему печатная форма, в которой отображаются в каждой строке клиенты, приобретающие гсм в течении дня, клиенты разные, а номенклатура повторяется, как можно свернуть для новой, созданной печатной ...
Вопрос № 119507: Здравствуйте уважаемые эксперты! При сканировании штрихкода в терминальном режиме штрихкод через раз разбивается на несколько строк. Как это можно поправить?...
Вопрос № 119514: Здравствуйте уважаемые эксперты. У меня есть возник такой вопрос, как в таблице значений найти значение в определенном столбце, и при том мне надо найти все одинаковые значения. Одно значение я ищу так: пстр=0; ТН.НайтиЗначение(СокрЛП(Нак...

Вопрос № 119.496
Доброго времени. Существует документ: РеализацияГСМ, к нему печатная форма, в которой отображаются в каждой строке клиенты, приобретающие гсм в течении дня, клиенты разные, а номенклатура повторяется, как можно свернуть для новой, созданной печатной формы данные по повторяющейся номенклатуре, для определения количества и суммы по однотипной номенклатуре? Или в подвале той же печатной формы примерно так: Продано столько то АИ-80 на сумму ххх, столько то АИ-92 на сумму хххх и т.п.
Отправлен: 21.01.2008, 05:25
Вопрос задал: Provnick (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 7)

Отвечает: Яна
Здравствуйте, Provnick!
У ТаблицыЗначений есть метод Свернуть(), почитайте о нем в синтакс-помощнике. Вообще, неплохо было бы указать версию 1С. В 8.*, если документ записан, можно выбрать его из таблицы запросом и свернуть запросом, а потом просто вывести все строки полученной таким образом выборки.
Ответ отправила: Яна (статус: Студент)
Ответ отправлен: 21.01.2008, 08:00
Оценка за ответ: 5
Комментарий оценки:
Да, нужно было версию то указать (V7.7бух), приношу извинения, поторопился, то, что про запрос это видимо к 8ке?


Вопрос № 119.507
Здравствуйте уважаемые эксперты!
При сканировании штрихкода в терминальном режиме штрихкод через раз разбивается на несколько строк. Как это можно поправить?
Отправлен: 21.01.2008, 08:44
Вопрос задал: Witaliy (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Сергей Максименко [Elric]
Здравствуйте, Witaliy!

Просто при получения штрихкода удаляйте из него все разделители строк. Например так:

ШтрихКод=СтрЗаменить(ШтрихКод,РазделительСтрок,"");

РазделительСтрок - это системная константа.
Возможно, вместо разделитея строк нужен другой символ - тогда подставьте в функцию его вместо пустой строки.
---------
В творчестве рождается истина
Ответ отправил: Сергей Максименко [Elric] (статус: Профессионал)
Украина, Киев
Тел.: (044) 22-88-369
Организация: МАКСЕР, "1С:Предприятие" в Киеве
Адрес: г. Киев
WWW: www.makser.com.ua
----
Ответ отправлен: 21.01.2008, 11:01
Оценка за ответ: 4


Вопрос № 119.514
Здравствуйте уважаемые эксперты. У меня есть возник такой вопрос, как в таблице значений найти значение в определенном столбце, и при том мне надо найти все одинаковые значения. Одно значение я ищу так:
пстр=0;
ТН.НайтиЗначение(СокрЛП(Накроз.НомерДок),пстр,2);
ТН.ПолучитьСтрокуПоНомеру(пстр);
А как найти несколько? (нехочу крутить цикл, или другого варианта нет?), например такого как "ВыбратьЭлементыПоРеквизиту". Зарание благодарен.
Отправлен: 21.01.2008, 09:26
Вопрос задал: Andris (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Maximush
Здравствуйте, Andris!

В 7.7 другого варианта нет - только перебор таблицы. Однако его можно ускорить, предварительно отсортировав таблицу по данной колонке. Я бы сделал так:

//-------------------------------------
ТН.Сортировать("2"); //отсортировали по колонке №2
пстр=0;
ТН.НайтиЗначение(СокрЛП(Накроз.НомерДок),пстр,2); //нашли первую строку с нужным значением, номер строки в пстр

Пока (ТН.ПолучитьЗначение(пстр,2)=СокрЛП(Накроз.НомерДок)) //пока значение не изменилось ...
и (пстр<=ТН.КоличествоСтрок()) //и не кончились строчки
цикл
Сообщить(ТН.ПолучитьЗначение(пстр,1)); //что-то делаем в строке
пстр=пстр+1; //и переходим на следующую
КонецЦикла;
//--------------

disclaimer: в зависимости от состава и размера таблицы значений этот алгоритм может работать медленнее чем простой перебор.
Ответ отправил: Maximush (статус: 1-ый класс)
Ответ отправлен: 21.01.2008, 10:51
Оценка за ответ: 5
Комментарий оценки:
Спасибо за ответ, зделал именно так, с помощю сортировки. Текст пришлось подправить, потомучто условия я полностью не высветил.

Отвечает: Сергей Максименко [Elric]
Здравствуйте, Andris!

Чтобы найти значение в конкретном столбце, нужно указать его в методе НайтиЗначение(), что Вы собственно и делаете.
Отобрать строки с одинаковыми значениями нельзя. Можно только отсортировать их по этой колонке, найти первый и потом в цикле пройтись по остальным строкам. Например, так как у меня в Приложении.

Приложение:

---------
В творчестве рождается истина

Ответ отправил: Сергей Максименко [Elric] (статус: Профессионал)
Украина, Киев
Тел.: (044) 22-88-369
Организация: МАКСЕР, "1С:Предприятие" в Киеве
Адрес: г. Киев
WWW: www.makser.com.ua
----
Ответ отправлен: 21.01.2008, 10:55
Оценка за ответ: 5
Комментарий оценки:
спасибо за ответ, очен грамотный и хороший, понятные коментарии, и главное все получилось

Отвечает: Гудков Сергей Евгеньевич
Здравствуйте, Andris!
Если можно использовать сортировку, то сначала отсортируй по по этому столбцу. ТН.Сортировать("+ИмяКолонки"). Потом смотри приложение

Приложение:

Ответ отправил: Гудков Сергей Евгеньевич (статус: 1-ый класс)
Ответ отправлен: 21.01.2008, 10:58
Оценка за ответ: 5
Комментарий оценки:
Спасибо за ответ, зделал именно так, с помощю сортировки. Текст пришлось подправить, потомучто условия я полностью не высветил.


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.70 от 17.01.2008
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное