Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Отчет по кредиту 51 го счета  (Прочитано 4967 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ge4r
Участник

ru
Offline Offline

« : 05-08-2009 06:04 » 

Задача следующая:
есть отчет "Обороты счета",там задаем период,номер счета(51)...выводится "обороты по счету 51",тыкаем на расшифровку ячейки 51 го счета,выводится "журнал проводок по 51 счету"...опять же тыкаем на расшифровку,получаем "операция(Выписка)"
вот отсюда мне нужно выудить вид договора,контрагента,сумму,дату и тд...
какие нужно использовать функции\процедуры,и как узнать идентификаторы ячеек этой операции?
Записан
ge4r
Участник

ru
Offline Offline

« Ответ #1 : 08-08-2009 16:23 » 

вот что пока написал:
Код:
Процедура Сформировать()
    Перем  Опер, Таб;
Проверить_Дату();
Таб = СоздатьОбъект("Таблица");
Таб.ВывестиСекцию ("Шапка");
Опер = СоздатьОбъект("Операция");
Опер.ВыбрратьОперацииСПроводками (НачДата,КонДата,"*,51",,,);
Пока Опер.ПолучитьПроводку() = 1 Цикл
    Таб.ВывестиСекцию("Строка");   
КонецЦикла;
КонецПроцедуры

вот только никак не могу понять как добраться до нужной операции через конфигуратор и взять идентификаторы нужных ячеек...как это сделать можно?
Записан
ge4r
Участник

ru
Offline Offline

« Ответ #2 : 11-08-2009 08:57 » 

Вот что написал

Код:
Процедура Сформировать()
    Перем  Опер, Таб, Сумма, Заголовок;
    Проверить_Дату();
    Заголовок = "Отчет по движению денежных средств за период  "+ ПериодСтр(НачДата,КонДата);
    Таб = СоздатьОбъект("Таблица");
    Таб.ВывестиСекцию ("Шапка");

   
    Док = СоздатьОбъект("Документ.Выписка");
    Док.ВыбратьДокументы(НачДата, КонДата);
    Пока Док.ПолучитьДокумент() = 1 Цикл
        Если Док.Проведен() = 0  Тогда
            Продолжить;
        КонецЕсли;
        Док.ВыбратьСтроки();
        Пока Док.ПолучитьСтроку() = 1 Цикл
            Если Док.Расход <> 0  Тогда
                Если ПустоеЗначение(Док.ПервичныйДокумент) = 0 Тогда
                    ВидДоговора = Док.ПервичныйДокумент.Договор.ВидДоговора;
                    Если Док.КоррСчет.ПринадлежитГруппе(СчетПоКоду("68")) = 1 Тогда   
                        Контрагент = Док.Наименование(СчетПоКоду("68"));
                       ИначеЕсли Док.КоррСчет.ПринадлежитГруппе(СчетПоКоду("69")) = 1 Тогда
                        Контрагент = Док.ПервичныйДокумент.Договор;
                    Иначе
                        Контрагент = Док.ПервичныйДокумент.Контрагент;
                    КонецЕсли;
                   
                   
                    Договор = Док.ПервичныйДокумент.Договор;
                    Сумма = Док.Расход;
                    НомПП = Док.НомерДокВходящий;
                    ДатаПП = Док.ДатаДокВходящий;
                    ДатаВыписки = Док.ДатаДок;
                    Таб.ВывестиСекцию("Строка"); 
                КонецЕсли;
            КонецЕсли;
        КонецЦикла;
       
    КонецЦикла;
   
    Таб.ТолькоПросмотр(1);
    Таб.Опции(0,0,0,0);
    Таб.ПараметрыСтраницы(2,,,,,,,,,1);   
    Таб.Показать();
КонецПроцедуры



Теперь нужно сделать отбор по контрагенту и виду договора
как это лучше реализовать,у меня только вариант с кучей Если...есть ли более рациональный способ?

и еще,если в группе встречается 68 счет,то в поле контрагент нужно вывести наименование счета,подскажите функцию,которая возвращает наименование...
Если Док.КоррСчет.ПринадлежитГруппе(СчетПоКоду("68")) = 1 Тогда
Записан
ge4r
Участник

ru
Offline Offline

« Ответ #3 : 13-08-2009 09:10 » 

разобрался
« Последнее редактирование: 13-08-2009 13:57 от ge4r » Записан
Kivals
Модератор

us
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 16-08-2009 08:51 » 

Цитата
Теперь нужно сделать отбор по контрагенту и виду договора
Запросом пробовал?
Записан
ge4r
Участник

ru
Offline Offline

« Ответ #5 : 26-08-2009 08:47 » 

нет,сделал просто 2 условия и всё
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines