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

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

  Все выпуски  

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


Хостинг Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг на Windows 2008

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

Чемпионы рейтинга экспертов в этой рассылке

Faustofel
Статус: 10-й класс
Рейтинг: 75
∙ повысить рейтинг >>
Владимир Лазурко
Статус: Практикант
Рейтинг: 45
∙ повысить рейтинг >>
Бородин Константин Игоревич
Статус: 8-й класс
Рейтинг: 44
∙ повысить рейтинг >>

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

Выпуск № 976
от 22.03.2009, 14:35

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

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

Вопрос № 162556: Отчет выводит как на рис.1. А надо, чтобы в дебет счета 10.3.2 и далее все что к нему относится, В дебет счета 10.3 и далее все что к нему относится. А он, как видно на рисунке В дебет счета пишет для каждого вида номенклатуры. Что в коде исправить ...


Вопрос № 162562: Добрый день. Используется 1С 7.7, "Комплексная конфигурация". Подскажите как сделать что-бы при выписке счета, в распечатке цена округлялась до трех знаков....

Вопрос № 162.556
Отчет выводит как на рис.1. А надо, чтобы в дебет счета 10.3.2 и далее все что к нему относится, В дебет счета 10.3 и далее все что к нему относится. А он, как видно на рисунке В дебет счета пишет для каждого вида номенклатуры. Что в коде исправить можно?


Запрос = Новый Запрос("ВЫБРАТЬ
| ХозрасчетныйДвиженияССубконто.СчетДт КАК СчетДт,
| ХозрасчетныйДвиженияССубконто.СубконтоДт1 КАК Номенклатура,
| ХозрасчетныйДвиженияССубконто.СубконтоКт1 КАК ФизическоеЛицо,
| СУММА(ХозрасчетныйДвиженияССубконто.Сумма) КАК Сумма,
| ХозрасчетныйДвиженияССубконто.Регистратор КАК Документ,
| СУММА(ХозрасчетныйДвиженияССубконто.КоличествоДт) КАК Количество,
| ХозрасчетныйДвиженияССубконто.СубконтоКт1.Код КАК ТабельныйНомер,
| Хозра счетныйДвиженияССубконто.СубконтоДт1.БазоваяЕдиницаИзмерения КАК ЕдиницаИзмерения,
| ХозрасчетныйДвиженияССубконто.СчетДт.Код КАК Код,
| ХозрасчетныйДвиженияССубконто.СчетДт.Наименование КАК ИмяСчета
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
| &НачПериода,
| &КонПериода,
| СчетДт В ИЕРАРХИИ (&Счет10_3)
| И СчетКт В ИЕРАРХИИ (&Счет71_1)) КАК ХозрасчетныйДвиженияССубконто
|
|СГРУППИРОВАТЬ ПО
| ХозрасчетныйДвиженияССубконто.СчетДт,
| ХозрасчетныйДвиженияССубконто.СубконтоДт1,
| ХозрасчетныйДвиженияССубконто.СубконтоКт1,
| ХозрасчетныйДвиженияССубконто.Регистратор,
| ХозрасчетныйДвиженияССубконто.СубконтоКт1.Код,
| ХозрасчетныйДвиженияССубконто.СубконтоДт1.БазоваяЕдиницаИзмерения
|ИТОГИ
| СУММА(Сумма),
| СУММА(Количество)
|ПО
| ОБЩИЕ,
| СчетДт,
| Номенклатура,
| ФизическоеЛицо");


Запрос.Параметры.Вставить("НачПериода", НачПериода);
Запрос.Параметры.Вставить("КонПериода", КонПериода);
Запрос.Параметры.Вставить("Счет10_3", ПланыСчетов.Хозрасчетный.НайтиПоКоду("10.03"));
Запрос.Параметры.Вставить("Счет71_1", ПланыСчетов.Хозрасчетный.НайтиПоКоду("71.01"));

Результат = Запрос.Вып олнить();

Если Результат.Пустой() Тогда
Возврат;
КонецЕсли;

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
Макет = ПолучитьМакет("МакетТопливо");
ОбластьШапкаТаблицы= Макет.ПолучитьОбласть("Шапка");
ОбластьСчетДт=Макет.ПолучитьОбласть("СчетДт");
ОбластьДетали= Макет.ПолучитьОбласть("Детали");
ОбластьИтоги= Макет.ПолучитьОбласть("ОбщиеИтоги");
ОбластьИтогиПоГруппировке= Макет.ПолучитьОбласть("ИтогПоГруппировке");
ОбластьИтогПоСчету= Макет.ПолучитьОбласть("ИтогПоСчету");

ТабДок.Очистить();
ОбластьШапкаТаблицы.Параметры.НачПериода = Формат(НачПериода, "ДФ=dd.MM.yyyy");
ОбластьШапкаТаблицы.Параметры.КонПериода = Формат(КонПериода, "ДФ=dd.MM.yyyy");
ТабДок.Вывести(ОбластьШапкаТаблицы);
ТабДок.НачатьАвтогруппировкуСтрок();


ВыборкаОбщие = Результат.Выбрать(ОбходРезультатаЗапроса.По Группировкам);
Пока ВыборкаОбщие.Следующий() Цикл
ВыборкаСчет = ВыборкаОбщие.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаСчет.Следующий() Цикл
ВыборкаНоменклатура = ВыборкаСчет.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаНоменклатура.Следующий() Цикл
Выборка = ВыборкаНоменклатура.Выбрать();
ОбластьСчетДт.Параметры.Заполнить(ВыборкаНоменклатура);
ТабДок.Вывести(ОбластьСчетДт,1);
ВыборкаФизЛицо = ВыборкаНоменклатура.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаФизЛицо.Следующий() Цикл
Выборка = ВыборкаФизЛицо.Выбрать();


Пока Выборка.Следующий() Цикл
ОбластьДетали.Параметры.Заполнить(Выборка);
ТабДок.Вывести(ОбластьДетали);

КонецЦикла;
ОбластьИтогиПоГруппировке .Параметры.Заполнить(ВыборкаФизЛицо);

ТабДок.Вывести(ОбластьИтогиПоГруппировке);


КонецЦикла;
КонецЦикла;
ОбластьИтогПоСчету.Параметры.Заполнить(ВыборкаСчет);
ТабДок.Вывести(ОбластьИтогПоСчету);
//заполнение итогово по счету в макете
КонецЦикла;
ОбластьИтоги.Параметры.Заполнить(ВыборкаОбщие);
ТабДок.Вывести(ОбластьИтоги);
КонецЦикла;
ТабДок.ЗакончитьАвтогруппировкуСтрок();




Отправлен: 17.03.2009, 11:09
Вопрос задал: Егоров Виталий Александрович
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 8)

Отвечает: Полякова Ирина Николаевна
Здравствуйте, Егоров Виталий Александрович!
В макете надо выделить две области для группировки по счетам и для группировки по номенклатуре.

В коде написать так:
ВыборкаОбщие = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаОбщие.Следующий() Цикл
ВыборкаСчет = ВыборкаОбщие.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаСчет.Следующий() Цикл
//добавить вывод области группировки по счету
ОбластьСчетДт.Параметры.Заполнить(ВыборкаСчет);
ТабДок.Вывести(ОбластьСчетДт);

ВыборкаНоменклатура = ВыборкаСчет.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаНоменклатура.Следующий() Цикл
//Выборка = ВыборкаНоменклатура.Выбрать();//эта строка не нужна
//ОбластьСчетДт.Параметры.Заполнить(ВыборкаНоменклатура);
//выводим область группировки по номенклатуре
ОбластьНоменклатура.Параметры.Заполнить(ВыборкаНоменклатура);
//ТабДок.Вывести(ОбластьСчетДт,1);
Та бДок.Вывести(ОбластьНоменклатура);

ВыборкаФизЛицо = ВыборкаНоменклатура.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаФизЛицо.Следующий() Цикл
Выборка = ВыборкаФизЛицо.Выбрать();

Пока Выборка.Следующий() Цикл
ОбластьДетали.Параметры.Заполнить(Выборка);
ТабДок.Вывести(ОбластьДетали);
КонецЦикла;
ОбластьИтогиПоГруппировке.Параметры.Заполнить(ВыборкаФизЛицо);
ТабДок.Вывести(ОбластьИтогиПоГруппировке);
КонецЦикла;
КонецЦикла;
ОбластьИтогПоСчету.Параметры.Заполнить(ВыборкаСчет);
ТабДок.Вывести(ОбластьИтогПоСчету);
//заполнение итогово по счету в макете
КонецЦикла;
ОбластьИтоги.Параметры.Заполнить(ВыборкаОбщие);
ТабДок.Вывести(ОбластьИтоги);
КонецЦикла;
---------
Деньги склока, а без них плохо...
Ответ отправила: Полякова Ирина Николаевна (статус: 5-й класс)
Ответ отправлен: 17.03.2009, 11:42

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245485 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вопрос № 162.562
    Добрый день. Используется 1С 7.7, "Комплексная конфигурация". Подскажите как сделать что-бы при выписке счета, в распечатке цена округлялась до трех знаков.
    Отправлен: 17.03.2009, 12:39
    Вопрос задал: Грабко Сергей Николаевич (статус: Посетитель)
    Всего ответов: 2
    Мини-форум вопроса >>> (сообщений: 0)

    Отвечает: Анатолий Ясень
    Уважаемый Сергей Николаевич,

    в макете счета найдите ячейку на пересечении секции "Строка" и колонки "Цена".
    Замените выражение глФРМ(Цена) на Цена и установите свойства ячейки так, чтобы точность числа была 3 знака.

    ---------
    Только вперед!
    Ответ отправил: Анатолий Ясень (статус: 8-й класс)
    Ответ отправлен: 17.03.2009, 13:11

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245490 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Отвечает: Владимир Лазурко
    Здравствуйте, Грабко Сергей Николаевич!

    Дополню ответ Анатолия: Измените процедуру глФРМ(Цена) так, как у меня в Приложении и у Вас получится унифицированная функция.
    Если не задавать второй параметр - будет округление до 2-х знаков после запятой. А там, где нужна другая точность - вторым параметром укажите нужное число знаков.
    Если передано пустое значение или ноль, функция возвращает пустую строку.

    Успехов!
    С уважением, Владимир.

    Приложение:

    ---------
    И как хотите, чтобы с вами поступали люди, так и вы поступайте с ними. (Евангелие от Луки, 6:31, совр. перевод)

    Ответ отправил: Владимир Лазурко (статус: Практикант)
    Ответ отправлен: 17.03.2009, 16:03

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245500 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


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

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

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

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

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

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


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

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров >>

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RusFAQ.ru, Россия, Москва.
    Авторское право: ООО "Мастер-Эксперт Про"
    Техподдержка портала, тел.: +7 (926) 535-23-31
    Хостинг: "Московский хостер"
    Поддержка: "Московский дизайнер"
    Авторские права | Реклама на портале

    ∙ Версия системы: 5.13 от 01.12.2008

    Яндекс Rambler's Top100
    RusFAQ.ru | MosHoster.ru | MosDesigner.ru
    RusIRC.ru | Kalashnikoff.ru | RadioLeader.ru

    В избранное