7.7 Одинаковые ИНН

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем rinaty17, 29 окт 2012.

  1. TopicStarter Overlay
    rinaty17
    Offline

    rinaty17

    Регистрация:
    5 июл 2012
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    1
    Добрый день уважаемые форумчане.
    Я в семерке плохо шарю, но некоторые моменты знаю.
    к вам такая просьба.
    мне нужно сделать отчет который выводит список контрагентов у которых одинаковый ИНН или не заполненный ИНН.
    Вот мои наброски

    //_____________________________________________________________________________

    Функция ПоискКонтрагента(пПоиск)
    спрФиз = СоздатьОбъект("Справочник.ФизЛица");
    спрЮр = СоздатьОбъект("Справочник.ЮрЛица");
    спрСвои = СоздатьОбъект("Справочник.СвоиЮрЛица");
    Если спрФиз.НайтиПоНаименованию(пПоиск,0,1)=1 Тогда
    СпрЛица = спрФиз.ИНН;
    Возврат СпрЛица;
    ИначеЕсли спрЮр.НайтиПоНаименованию(пПоиск,0,1)=1 Тогда
    СпрЛица = спрЮр.ИНН;
    Возврат СпрЛица;
    ИначеЕсли спрСвои.НайтиПоНаименованию(пПоиск,0,1)=1 Тогда
    СпрЛица = спрСвои.ИНН;
    Возврат СпрЛица;
    Иначе
    Возврат 0;
    КонецЕсли;
    КонецФункции //


    //*******************************************

    Процедура Сформировать()
    Таб=СоздатьОбъект("Таблица");
    Таб.ВывестиСекцию("Шапка");
    Таб.ТолькоПросмотр(1);
    Спр1 = СоздатьОбъект("Справочник.Контрагенты");
    Спр1.ВыбратьЭлементы();
    Пока Спр1.ПолучитьЭлемент() = 1 Цикл
    Если (Спр1.ЭтоГруппа() = 0) и (Спр1.ПометкаУдаления() = 0) Тогда
    Спр2 = СоздатьОбъект("Справочник.Контрагенты");
    Спр2.ВыбратьЭлементы();
    СпрЛица1 = ПоискКонтрагента(Спр1.ЮрФизЛицо);
    Если СпрЛица1 = "" Тогда
    Таб.ВывестиСекцию("Строка");
    Иначе
    Пока Спр2.ПолучитьЭлемент() = 1 Цикл

    Если (Спр2.ЭтоГруппа() = 0) и (Спр2.ПометкаУдаления() = 0) Тогда

    СпрЛица2 = ПоискКонтрагента(Спр2.ЮрФизЛицо);
    Если СпрЛица1=СпрЛица2 Тогда
    Таб.ВывестиСекцию("Строка");
    КонецЕсли;


    КонецЕсли;
    КонецЦикла;
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;
    Таб.Показать();
    КонецПроцедуры

    как можно упрастить данный модуль? может как нибудь через запрос можно сделать? в 8ке я бы без проблем решил бы эту задачу...
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    1) выгрузить в ТЗ инн.
    2) добавить колонку "счетчик". Тип число. Длина достаточно 1
    3) Свернуть ТЗ по ИНН
    4) перебрать строки ТЗ. Там где счетчик <> 1. Есть дубли
  3. TopicStarter Overlay
    rinaty17
    Offline

    rinaty17

    Регистрация:
    5 июл 2012
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    1
    спс ща попробую так сделать
  4. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Дополню на всякий случай:
    Между п.2 и п.3 нужно заполнить счетчик 1.
  5. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Да. Упустил. Но думаю догадаются

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