| 
    
            
         
         | 
    
  | 
синхронизация одинаковых функций в нескольких отчетах, как лучше? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Холст    
     29.07.13 
            ✎
    16:30 
 | 
         
        есть несколько разнофункциональных внешний отчетов, в которых некоторые функции одинаковые (универсальный подбор и тп)
 
        эти функции нельзя вынести в глобальный модуль тк отчеты применяются в разных типовых клиентов со временем функции дорабатываются и каждый раз приходится в каждый отчет копипастить новый код функций вопрос: как бы оптимальнее (критерий - экономия времени на разработку) построить систему, чтобы при изменении функции в одном отчете в других тоже была обновленная версия функции ? пока 2 направления вижу: - курить сборку - разборку обработок gcomp-ом и сопутствующими приблудами - набросать обработку и компонентой Compound.dll делать логику "выбираем функцию из отчета-источника и ставим такой же код в отчетах-приемниках" - использовать Inserter Альфа ? не знаю еще пригодно ли кто сталкивался с подобноой проблемой и как выходил ?  | 
|||
| 
    1
    
        Холст    
     29.07.13 
            ✎
    16:30 
 | 
         
        пока к 2му варианту склоняюсь     
         | 
|||
| 
    2
    
        Chum    
     29.07.13 
            ✎
    16:32 
 | 
         
        Что мешает общие процедуры собрать во внешней обработке, а разношерстные отчеты настроить на работу с это обработкой? Ну если в глобальник нет желания лезть.     
         | 
|||
| 
    3
    
        Джинн    
     29.07.13 
            ✎
    16:34 
 | 
         
        (2) +100500     
         | 
|||
| 
    4
    
        Salimbek    
     29.07.13 
            ✎
    16:56 
 | 
         
        (0) Классы 1С++ не предлагать?     
         | 
|||
| 
    5
    
        Холст    
     29.07.13 
            ✎
    17:24 
 | 
         
        (2) это вариант, только сомнения что сильно замедлит выполнение... есть функции которые выполняются внутри цикла вывода по строкам, открывать каждый раз отдельную обработку не вариант
 
        (4) какие например ? с классами слабо работал пока хотелось бы решения по автоматизации сборки отчетов, а не вызова из отчета дополнительных обвязок  | 
|||
| 
    6
    
        Мимохожий Однако    
     29.07.13 
            ✎
    17:35 
 | 
         
        (0)Копипасте для новых отчетов или модернизированных отчетов проще всего.А старые отчеты, которые не меняются проживут и без этого до очередного изменения.     
         | 
|||
| 
    7
    
        Попытка1С    
     29.07.13 
            ✎
    17:41 
 | 
         
        (4) +1     
         | 
|||
| 
    8
    
        fedoss    
     29.07.13 
            ✎
    19:04 
 | 
         
        (4) Можно и без классов - ДобавитьГлобальныйМодуль() + #ЗагрузитьИзФайла. Все общие функции вынести в этот файл     
         | 
|||
| 
    9
    
        Холст    
     29.07.13 
            ✎
    19:11 
 | 
         
        (8) неплохо только формекс или 1С++ надо, но неплохо     
         | 
|||
| 
    10
    
        Salimbek    
     29.07.13 
            ✎
    20:28 
 | 
         
        (5) Ну как, подключашь 1С++, потом в defcls.prm пишешь, например:
 
        // начало определения класса class ГлобальныеФункции = unpack\classes\ГлобальныеФункции.ert {} // завершение определения класса !! в этой обработке прописываешь: Процедура УложитьТаблицу(пТЗ, ИмяТаб, Колонки="", рс="") Экспорт и потом в любом месте можешь вызывать: клВнешний = СоздавтьОбъект("ГлобальныеФункции"); клВнешний.УложитьТаблицу(взТЗ, "#tempDB");  | 
|||
| 
    11
    
        Cthulhu    
     01.08.13 
            ✎
    20:36 
 | 
         
        1) общие процедуры-функции - в отдельный текстовый файл, например, "globalshonado.txt";
 
        2) во всех обработках, использующих этот функционал - "#загрузитьизфайла ...\NewModile.txt" 2.1) для каждой обработки сохранить в текстовом файле, совпадающим с именеv обработки, её текст КРОМЕ общего функционала. 3) все обработки запускать "стартером" - обработкой, которая возьмёт содержимое файла п.2.1, затем прилепит в самое начало содержимое файла п.1, сохранит результат в файле с именем п.2, согбственно стартанёт нужную обрабтку (п.2) и запилит файл п.2.1. сборку-разборку модулей для отладки-конфигурирования - нарисовать тоже можно. даже авто-вынос общего по пачке обработок в псевдо-глобальник можно замайстрячить.  | 
|||
| 
    12
    
        Cthulhu    
     01.08.13 
            ✎
    20:36 
 | 
         
        " запилит файл п.2. " а не "2.1.", паардон.     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |