7.7 как создать отчет в зарплате и кадры

Тема в разделе "Отчеты и обработки для "1С:Предприятие 7.7"", создана пользователем vladeletc, 12 мар 2013.

  1. TopicStarter Overlay
    vladeletc
    Offline

    vladeletc

    Регистрация:
    12 мар 2013
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    ВСЕМ ДОБРЫЙ ДЕНЬ! В ЗАРПЛАТЕ И КАДРЫ ВЕДЕТСЯ УЧЕТ ПО ВЫХОДУ МАШИН: ЕСТЬ СПРАВОЧНИК АВТОМОБИЛЕЙ, ЕСТЬ ДОКУМЕНТ ПУТЕВОЙ ЛИСТ. НУЖНО СДЕЛАТЬ ОТЧЕТ КАКИЕ МАШИНЫ ВЫХОДИЛИ И ЕСЛИ ВЫХОДИЛИ ТОГДА В ТАБЛИЦЕ НУЖНО ЗАПОЛНИТЬ КОЛОНКИ "СОТРУДНИК", "МАРШРУТ", "СУММА". НАПИСАЛ ВОТ ТАКОЙ МОДУЛЬ:


    Процедура МаршрутнаяВедомость()

    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("МаршрутнаяВедомость");
    Таб.ВывестиСекцию("Заголовок");
    Таб.ВывестиСекцию("Шапка");

    Ном=0;

    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС(сформировать)
    |с ДатаДок по ДатаДок;
    |ОбрабатыватьДокументы Проведенные;
    |Док = Документ.ПутевойЛист.ТекущийДокумент;
    |Авто = Справочник.Автомобили.ТекущийЭлемент;
    |Группировка Авто;
    |Группировка Док;
    |"//}}Запрос
    ;

    Если Запрос.Выполнить(ТекстЗапроса)=0 Тогда
    Возврат;
    КонецЕсли;

    Пока Запрос.Группировка("Авто")=1 Цикл
    Ном=Ном+1;
    ГН=Запрос.Авто.Наименование;

    Пока Запрос.Группировка("Док")=1 Цикл
    ГН1=Запрос.Док.Автомобиль.Наименование;

    Если ГН=ГН1 Тогда

    НМ=Запрос.Док.Маршрут.Код;
    Сотр=Запрос.Док.Сотрудник;

    Если НМ="513" Тогда
    Сдано=План513;
    КонецЕсли;
    Если НМ="514" Тогда
    Сдано=План514;
    КонецЕсли;
    Если НМ="515" Тогда
    Сдано=План515;
    КонецЕсли;
    Если НМ="517" Тогда
    Сдано=План517;
    КонецЕсли;
    Если НМ="522" Тогда
    Сдано=План522;
    КонецЕсли;
    Если НМ="528" Тогда
    Сдано=План528;
    КонецЕсли;
    Если НМ="530" Тогда
    Сдано=План530;
    КонецЕсли;
    Если НМ="531" Тогда
    Сдано=План531;
    КонецЕсли;

    Примечание="";
    Иначе

    НМ="";
    Сдано="";
    Примечание="Без Выезда";
    Таб.ВывестиСекцию("Выезд");
    КонецЕсли;
    КонецЦикла;
    КонецЦикла;

    Таб.ВывестиСекцию("Подвал");

    Таб.Опции(0,0,0,0);
    Таб.ТолькоПросмотр(1);
    Таб.ПараметрыСтраницы(1,,,10,10,10,10,10,10,1);
    Таб.Показать("Маршрутная ведомость");

    КонецПроцедуры


    НО ОН НЕ РАБОТАЕТ Т.К. ПО ВСЕЙ ВЕРОЯТНОСТИ ЗНАЧЕНИЯ "ГН" И "ГН1" СРАВНИВАЮТСЯ НЕКОРРЕКТНО. ПОДСКАЖИТЕ ПОЖАЛУЙСТА, КАК ДОВЕСТИ ДО УМА ОТЧЕТ. ЗАРАНЕЕ БЛАГОДАРЕН
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Код:
    Если Врег(СокрЛП(ГН))=Врег(СокрЛП(ГН1)) Тогда
  3. TopicStarter Overlay
    vladeletc
    Offline

    vladeletc

    Регистрация:
    12 мар 2013
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Ан нет, не помогло - не формируется отчет... Может еще что-нибудь подскажете?
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    А если отладчиком глянуть узкое место?
  5. TopicStarter Overlay
    vladeletc
    Offline

    vladeletc

    Регистрация:
    12 мар 2013
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    --
    А что отладчик сделает ? Синтакс контроль ошибок не показывает...

    да и не знаю я как им пользоваться...
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Отладчик вам покажет почему не выполняется то или иное условие.
  7. TopicStarter Overlay
    vladeletc
    Offline

    vladeletc

    Регистрация:
    12 мар 2013
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Отчет готов, спасибо за внимание

Поделиться этой страницей