| 
    
        
     
     | 
    
  | 
v7: Выгрузка в XML | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        dmitn    
     07.04.20 
            ✎
    09:49 
 | 
         
        При выгрузке получается
 
        <attribute BegPeriod="НачДата">2020-02-01</attribute> <attribute EndPeriod="КонДата">2020-02-29</attribute> нужно <BegPeriod>2020-02-01</BegPeriod> <EndPeriod>2020-02-29</EndPeriod> Можно так сделать?  | 
|||
| 
    1
    
        Ёпрст    
     гуру 
    07.04.20 
            ✎
    09:51 
 | 
         
        Да. свойство Text установи а не атрибут     
         | 
|||
| 
    2
    
        dmitn    
     07.04.20 
            ✎
    09:57 
 | 
         
        хмлКорень = хмлФайлДанных.СоздатьПодчиненныйЭлемент("DataType");
 
        хмлЯчейка = хмлКорень.СоздатьПодчиненныйЭлемент("attribute"); хмлЯчейка.УстановитьАтрибут("BegPeriod", "НачДата"); хмлАтрибут = хмлФайлДанных.СоздатьУзел("text",Формат(ДатаГод(НачДата),"Ч(0)4")+"-"+Формат(ДатаМесяц(НачДата),"Ч(0)2")+"-"+Формат(ДатаЧисло(НачДата),"Ч(0)2")); хмлАтрибут.Значение = СокрЛП(Формат(ДатаГод(НачДата),"Ч(0)4")+"-"+Формат(ДатаМесяц(НачДата),"Ч(0)2")+"-"+Формат(ДатаЧисло(НачДата),"Ч(0)2")); хмлЯчейка.ДобавитьПодчиненный(хмлАтрибут);  | 
|||
| 
    3
    
        dmitn    
     07.04.20 
            ✎
    09:58 
 | 
         
        (1) где установить?     
         | 
|||
| 
    4
    
        Ёпрст    
     гуру 
    07.04.20 
            ✎
    09:58 
 | 
         
        (2) да ё.. не атрибут создавай, а узел и узлу установи text     
         | 
|||
| 
    5
    
        Ёпрст    
     гуру 
    07.04.20 
            ✎
    10:00 
 | 
         
        хмлЯчейка = хмлКорень.СоздатьПодчиненныйЭлемент("BegPeriod");
 
        хмлЯчейка.text = "вася";//я не помню за синтаксис в клюшках хмлЯчейка.УстановитьТекст("Вася");  | 
|||
| 
    6
    
        Ёпрст    
     гуру 
    07.04.20 
            ✎
    10:01 
 | 
         
        или так или метод есть, типа УстановитьТекст     
         | 
|||
| 
    7
    
        dmitn    
     07.04.20 
            ✎
    10:30 
 | 
         
        (5) получилось так
 
        хмлЯчейка = хмлКорень.СоздатьПодчиненныйЭлемент("BegPeriod"); хмлЯчейка.Текст = Формат(ДатаГод(НачДата),"Ч(0)4")+"-"+Формат(ДатаМесяц(НачДата),"Ч(0)2")+"-"+Формат(ДатаЧисло(НачДата),"Ч(0)2");  | 
|||
| 
    8
    
        dmitn    
     07.04.20 
            ✎
    10:30 
 | 
         
        (6) метода УстановитьТекст нет     
         | 
|||
| 
    9
    
        dmitn    
     08.04.20 
            ✎
    06:18 
 | 
         
        подскажите еще по такому вопросу
 
        Как поменять заголовок xml файла? Вместо <?xml version="1.0" encoding="UTF-8"?> нужно <DataType xmlns="http://www.dipo.org" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  | 
|||
| 
    10
    
        dmitn    
     08.04.20 
            ✎
    15:36 
 | 
         
        Был бы какой-нибудь метод типа СтрЗаменить но только на целый файл     
         | 
|||
| 
    11
    
        Pooh    
     08.04.20 
            ✎
    15:50 
 | 
         
        (10) в хмл установить пространство имен попробовать или альтернатива:
 
        создать объект текст открыть файл получить строку стрзаменить заменить строку сохранить файл  | 
|||
| 
    12
    
        dmitn    
     08.04.20 
            ✎
    15:53 
 | 
         
        (11) Слышал я про пространство имен, но как с этим работать, те более в 7.7?     
         | 
|||
| 
    13
    
        Харлампий Дымба    
     08.04.20 
            ✎
    17:30 
 | 
         
        В любой типовой ЗиК или Бух сделай глобальный поиск по строке
 
        РезФайл = СоздатьОбъект("AddIn.V7TextFile"); Покури вокруг неё.  | 
|||
| 
    14
    
        Харлампий Дымба    
     08.04.20 
            ✎
    17:31 
 | 
         
        РезФайл = СоздатьОбъект("AddIn.V7TextFile");     
         | 
|||
| 
    15
    
        dmitn    
     08.04.20 
            ✎
    17:38 
 | 
         
        (14) Спасибо. Попробую     
         | 
|||
| 
    16
    
        dmitn    
     08.04.20 
            ✎
    17:40 
 | 
         
        казалось бы причем здесь V7TextFile     
         | 
|||
| 
    17
    
        Pooh    
     08.04.20 
            ✎
    21:49 
 | 
         
        попробуй так
 
        сохрани свой сформированный хмл как файл открой его как текст и замени строку на нужную тебе для начала проверь ручками (через блокнот)  | 
|||
| 
    18
    
        big    
     09.04.20 
            ✎
    08:14 
 | 
         
        Уже используйте DOM и забудьте про эту косячную v7plus     
         | 
|||
| 
    19
    
        hhhh    
     09.04.20 
            ✎
    08:47 
 | 
         
        (18) а DOM разве не внутри v7plus находится?     
         | 
|||
| 
    20
    
        trad    
     09.04.20 
            ✎
    09:41 
 | 
         
        (9) если из xml-файла убрать
 
        <?xml version="1.0" encoding="UTF-8"?> то это будет не xml-файл ну это если стандарты важны  | 
|||
| 
    21
    
        big    
     10.04.20 
            ✎
    09:01 
 | 
         
        (19) v7plus использует msmxl только 3-й версии. Из-за этого, при наличии в системе другой версии, методы выборки и отборов падают по ошибке.     
         | 
|||
| 
    22
    
        dmitn    
     10.04.20 
            ✎
    10:43 
 | 
         
        Вроде разобрался. Нужно так:
 
        
Но только один нюанс. Они выводятся в обратном порядке. Как поменять порядок?  | 
|||
| 
    23
    
        dmitn    
     10.04.20 
            ✎
    11:14 
 | 
         
        Получается
 
        <DataType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.dipo.org"> Нужно <DataType xmlns="http://www.dipo.org"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> и точки с запятой не проставляет  | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |