| 
    
            
         
         | 
    
    
  | 
Отчет с данными из другой базы | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Буковка    
     04.12.23 
            ✎
    10:17 
 | 
         
        Помогите, пожалуйста, с правильностью действий (код напишу сама). Мне нужно сформировать отчет в базе 1, используя данные базы 2(в базе 1 нет данных объектов).
 
        Нужно использовать http соединение Могу ли я создать отчет в базе 2, написать http-метод в базе 2 и получить это всё в базе 1? я могу в базе 1 использовать внешний отчет?  | 
|||
| 
    1
    
        Доминошник    
     04.12.23 
            ✎
    10:21 
 | 
         
        В общем случае ответ на оба вопроса - да.     
         | 
|||
| 
    2
    
        Обработка    
     04.12.23 
            ✎
    10:23 
 | 
         
        Либо СОМ либо http.
 
        Но надо работать с предсавлениями а не самими объектами в отчетах. Так будте и правильне.  | 
|||
| 
    3
    
        Буковка    
     04.12.23 
            ✎
    10:24 
 | 
         
        (1) а как лучше сделать? формировать отчет в базе 1, используя внешний источник данных? или получать данные, сформированные в базе 2 в отчете?     
         | 
|||
| 
    4
    
        Обработка    
     04.12.23 
            ✎
    10:45 
 | 
         
        (3) А гугл тебе что сказал?     
         | 
|||
| 
    5
    
        Shur1cIT    
     04.12.23 
            ✎
    10:50 
 | 
         
        (0) делалп одобное, отчет сверял остатки в ERP и УПП, В УПП был поднят сервис HTTP в ERP сам отчет, те ерп формировал запрос в УПП за остатками далее после того как остатки получены соединял их с остатками в текущей базе.     
         | 
|||
| 
    6
    
        Буковка    
     04.12.23 
            ✎
    11:14 
 | 
         
        (5) спасибо, буду пробовать     
         | 
|||
| 
    7
    
        lEvGl    
     гуру 
    04.12.23 
            ✎
    11:41 
 | 
         
        (0) если надо просто в одной базе показать результат отчета из другой базы, то формируем отчет в базе2, возвращаем в базу1 просто ТабДок, показываем(). Он сериализуется.
 
        + способы передачи текста есть разные, от сервисов до тупо файлов  | 
|||
| 
    8
    
        Буковка    
     04.12.23 
            ✎
    11:45 
 | 
         
        (7) а как этот табдок показать в базе 1? сделать обработку? или в базе 1 сделать отчет на скд? мне это момент не совсем понятен     
         | 
|||
| 
    9
    
        lEvGl    
     гуру 
    04.12.23 
            ✎
    11:56 
 | 
         
        (8) в базе1 кнопка(где хотите, без разницы), она вызывает сервис (например, но можно и СОМ ипользовать. + и - одного и другого много раз обсуждались) базы2, в сервисе функция, которая программно формирует нужный отчет, на выходе этого формирования получаем ТабДок, который сериализуем и строкой возвращаем в качестве ответа на вызов сервиса базы2 в базу1. И пишем Показать(), все. А, ну из xml строки надо конечно ТабДок тут, в базе1, создать. Это делает через СериализоторXDTO, строчка кода в база2, строчка кода в база1, и имеем табДок в база1.     
         | 
|||
| 
    10
    
        Буковка    
     04.12.23 
            ✎
    11:57 
 | 
         
        (9) спасибо большое     
         | 
|||
| 
    11
    
        nodrama    
     04.12.23 
            ✎
    13:40 
 | 
         
        (0) У нас много таких отчетов.
 
        Мы в "нужной базе". собираем нужные данные из другой базы и формируем отчет. хттп, ком и т.д. не суть важно. Но у нас видимо проще. мы в "базе2" ни чего не формируем. Мы забираем только нужные данные (цифры там, даты, фио, ну и т.д.) и уже в нужной базе строим отчет.  | 
|||
| 
    12
    
        p-soft    
     04.12.23 
            ✎
    13:47 
 | 
         
        (6) да, это самое удобное:
 
        - делаем хттп сервис на источнике - на стороне хттп сервиса сняли данные с регистров, засунули их в массив структур, это все в json и вернули как двоичные данные тела ответа. - на стороне инициатора запроса из тела ответа получаем json, преобразовываем в тз и тз пихаем как набор данных в отчет. на днях тоже делал сверку из ут11 со складом. если данные паковать в deflate - вообще все летает.  | 
|||
| 
    13
    
        p-soft    
     04.12.23 
            ✎
    13:48 
 | 
         
        (12) у меня на сайте есть конфа и обработка с примером как делать, кстати     
         | 
|||
| 
    14
    
        lEvGl    
     гуру 
    04.12.23 
            ✎
    15:16 
 | 
         
        как то сомнения на счет связывания данных и так далее из за этого
 
        Мне нужно сформировать отчет в базе 1, используя данные базы 2(в базе 1 нет данных объектов) не говоря про синхронизацию ссылок и остального  | 
|||
| 
    15
    
        Donkey_hot    
     04.12.23 
            ✎
    15:22 
 | 
         
        (0) Вариант с пересылкой готового ТабДока кажется не очень гибким с точки зрения отборов, группировок и прочего. Но если возможности настройки не предусматривается, то можно и ТабДок.     
         | 
|||
| 
    16
    
        Буковка    
     04.12.23 
            ✎
    16:34 
 | 
         
        (14) мне не нужно связывать данные. Мне нужно вывести отчет из базы 2 в базе 1 (не используя данные базы 1)     
         | 
|||
| 
    17
    
        Буковка    
     04.12.23 
            ✎
    16:37 
 | 
         
        пока я пришла к такому варианту:
 
        Результат = HTTPОтвет.ПолучитьТелоКакДвоичныеДанные(); ПотокФайла = Новый ПотокВПамяти(); Результат.Записать(ПотокФайла); ДвоичныеДанныеФайла = ПотокФайла.ЗакрытьИПолучитьДвоичныеДанные(); Поток = ДвоичныеДанныеФайла.ОткрытьПотокДляЧтения(); ТабличныйДокумент.Прочитать(Поток); Поток.Закрыть(); HTTPСоединение = Неопределено; Возврат ТабличныйДокумент;  | 
|||
| 
    18
    
        lEvGl    
     гуру 
    04.12.23 
            ✎
    16:54 
 | 
         
        (16) это и не вам было
 
        (17) и как, работает?  | 
|||
| 
    19
    
        Буковка    
     05.12.23 
            ✎
    15:04 
 | 
         
        (18) нет, переделала иначе:
 
        1) сделала скд в базе 1 с внешним набором данных, в модуле объекта передала параметры и вызвала метод из базы 2 и получила ТЗ 2) в базе 2 написала метод и запрос для получения ТЗ. примерно всё так, как Вы подсказали в (9) Спасибо!  | 
|||
| 
    20
    
        lEvGl    
     гуру 
    05.12.23 
            ✎
    16:47 
 | 
         
        (19) замечательно же! и какие возможности теперь есть у пользователя этого отчета на скд, все счастливы? у них же скд, а не просто таб док.
 
        и еще интересно, что там в этой ТЗ, наименования вместо ссылок или ОбъектНеНайден?  | 
|||
| 
    21
    
        Буковка    
     06.12.23 
            ✎
    11:18 
 | 
         
        (20) Представление вместо ссылок. Это плохо?     
         | 
|||
| 
    22
    
        lEvGl    
     гуру 
    06.12.23 
            ✎
    11:29 
 | 
         
        (21) что для кого то хорошо, а что плохо сказать не могу. но свертка/группировка по одинаковым значениям поля в скд происходит, факт     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |