действие над повторами значений перед печатью

1. Alex_$ 07.11.07 09:19 Сейчас в теме
Пуб.2.8(7.70.301),платф-7.70.025
Подскажите пожалуйста возможно ли это через 1с описать(в документе заявка):
стоит такая задача- при выводе наименований в таблицу перед печатью нужно чтобы добавлялась пустая строка после повторяющихся наименований
пример
Наименование
с-91818-кш костюм д/мальч. 98,104-52
с-91818-кш костюм д/мальч. 98,104-56
с-91818-кш костюм д/мальч. 98,104-60
пустая строка
с-9504-ф брюки д/мальч. 98-52
с-9504-ф брюки д/мальч. 98-56
пустая строка
и.т.д.
видимо это должна быть выборка по первым 8 символам или это реально только если при выводе в эксел а там подцеплять макросом через надстройку автозапуском на имя открываемого файла типа через OnOpenAddIn_1.xla .
Заранее благодарен за ответ.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. sashulyT 201 07.11.07 10:40 Сейчас в теме
А зачем эксел, чем штатные средства не устраивают я бы примерно сделал так
Код
                ПредТовар = "";
   ВыбратьСтроки();
   Пока ПолучитьСтроку() = 1 Цикл
      НаименованиеТовара = глПолноеНаименование(Товар);
      Если лев(НаименованиеТовара,8)<>предТовар Тогда     
                       Если ПредТовар <> "" Тогда
            Таб.ВывестиСекцию("Строка_пустая");
                             предТовар=Лев(НаименованиеТовара, 8);
               продолжить;
            КонецЕсли;
         КонецЕсли;
         
         Таб.ВывестиСекцию("Строка");
         
         предТовар=Лев(НаименованиеТовара, 8);
      КонецЦикла;

Показать полностью
3. Alex_$ 07.11.07 12:01 Сейчас в теме
ура заработало



ПредТовар = "";
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
НаименованиеТовара = глПолноеНаименование(Товар);
Таб.ВывестиСекцию("Строка");

Если лев(НаименованиеТовара,8)<>предТовар Тогда
Если ПредТовар <> "" Тогда
Таб.ВывестиСекцию("Строка_пустая");
предТовар=Лев(НаименованиеТовара, 8);
продолжить;
КонецЕсли;
КонецЕсли;
предТовар=Лев(НаименованиеТовара, 8);
КонецЦикла;
4. sashulyT 201 07.11.07 12:03 Сейчас в теме
Alex_$ Написал:
-------------------------------------------------------
> ура заработало

А ты думал
5. Alex_$ 07.11.07 12:11 Сейчас в теме
нет я погоричился

работает так более правильно ,но съедает строчку



ПредТовар = "";
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
НаименованиеТовара = глПолноеНаименование(Товар);
Если лев(НаименованиеТовара,8)<>предТовар Тогда
Если ПредТовар <> "" Тогда
Таб.ВывестиСекцию("Строка_пустая");
предТовар=Лев(НаименованиеТовара, 8);
продолжить;
КонецЕсли;
КонецЕсли;

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

предТовар=Лев(НаименованиеТовара, 8);
КонецЦикла;
6. sashulyT 201 07.11.07 12:15 Сейчас в теме
Какую такую строчку съедает?
7. Alex_$ 07.11.07 12:18 Сейчас в теме
меньше строк выводит чем в документе
8. Alex_$ 07.11.07 12:19 Сейчас в теме
похоже как замещает пустой строкой реальную строчку
9. Alex_$ 07.11.07 12:21 Сейчас в теме
а вот так нормально
ПредТовар = ""; /////алекс

ВыбратьСтроки();

Пока ПолучитьСтроку() = 1 Цикл

НаименованиеТовара = глПолноеНаименование(Товар);

Если лев(НаименованиеТовара,8)<>предТовар Тогда /////алекс
Если ПредТовар <> "" Тогда /////алекс

Таб.ВывестиСекцию("Строка_пустая"); /////алекс
Таб.ВывестиСекцию("Строка");
предТовар=Лев(НаименованиеТовара, 8);/////алекс
продолжить; /////алекс
КонецЕсли; /////алекс
КонецЕсли; /////алекс


Таб.ВывестиСекцию("Строка");
предТовар=Лев(НаименованиеТовара, 8); /////алекс

10. sashulyT 201 07.11.07 13:19 Сейчас в теме
что-то ты намудрил, но если устраивает :)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот