Переключение на Главную Страницу Страницы: [1] 2 3 4 ОтправитьПечать
Очень популярная тема (более 25 ответов) XML и ALS–документация по классам (число прочтений - 11102 )
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
XML и ALS–документация по классам
16. Октября 2008 :: 07:56
Печать  
Как известно, "MetaInfoClasses" может генерировать MetaInfoClasses XML и ALS–документацию по классам.
В описании всего этого написано:
Цитата:
Для возможности формирования ALS – файла из XML комментариев определены 6 специальных тэгов названия, которые можно изменять:
•      Пространство имен (по умолчанию namespace). Этот тэг формирует папку в Синтакс-помощнике 1С
•      Класс (по умолчанию class)
•      Метод (по умолчанию method)
•      Параметр метода (по умолчанию param)
•      Возвращаемое значение (по умолчанию returns)
•      Свойство (по умолчанию property)
•      У всех вышеописанных тэгов, кроме возвращаемого значения, обязан быть атрибут имя (по умолчанию name)
Например (жирным шрифтом выделены все необходимые тэги и атрибуты):
/// <namespace name="Мои супер классы">
//****************************************************************************
///<class name = "МойКласс" Version = "1.0" LastDate = ""
///descr = ""
///depends = "" use = "" author = "Гусев Д.А." firm = "OXY" base = ""
///example = "" remark = "">
class МойКласс=МойКласс.ert
{
//*********************************************************************
     /// <property name="Атрибут1" access="Public" type="Строка">
     /// Атрибут первый
     /// </property>
     //**********************************************************************
     /// <method name="Метод" access="Public">
     /// <summary></summary>
     /// <example></example>
     /// <remark></remark>
     /// <param name="Число" mod="[in] | [out]" type="чПарам1" defaultValue = "1">Параметр первый</param>
     /// <returns type="Число">Что </returns>
     /// <sig>
     Число Метод(Число чПарам1 = 1);
     /// </sig>
     /// </method>
};      
///</class>
/// </namespace>
В поставку с ВК включен демонстрационный пример формирования als-файла для класса. И предложены шаблоны заполнения для 1C редактора, где есть сокращения: класс\ мет\ пар\ св\ прим\ и их англ. эквиваленты.

А где можно поподробнее почитать про эти тэги? Или может кто-то разъяснит. Вот например здесь:
Цитата:
/// <param name="Число" mod="[in] | [out]" type="чПарам1" defaultValue = "1">Параметр первый</param>

можно логически догодаться что есть что, но как мне узнать все эти "defaultValue", "mod" и "type"? Откуда вы берёте этот список?
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #1 - 16. Октября 2008 :: 08:05
Печать  
Я к чему всё это.
Сегодня(!) с радостью для себя обнаружил файлики xml2tls.exe и als2xml.js. Оказывается, телепату можно давать подсказки!!!  Ужас А мужики-то и не знали  Смущённый
  
Наверх
 
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #2 - 16. Октября 2008 :: 08:31
Печать  
насколько помню почитать можно в доке по 1С++ (качай исходники)
насчет скрипта есть"прикол", чтобы нормально генерился xml надо запускать скрипт из конфига, если из shell с параметром - левак.

  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #3 - 16. Октября 2008 :: 10:34
Печать  
JohnyDeath писал(а) 16. Октября 2008 :: 08:05:
А мужики-то и не знали  Смущённый

Знающие мужики как раз знали и давно юзают, с момента появления этой фичи Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #4 - 16. Октября 2008 :: 11:19
Печать  
Phoenix писал(а) 16. Октября 2008 :: 08:31:
насколько помню почитать можно в доке по 1С++ (качай исходники)
насчет скрипта есть"прикол", чтобы нормально генерился xml надо запускать скрипт из конфига, если из shell с параметром - левак.


А может кто-нибудь сюда выложить именно эти описания? У меня просто трафик не московский  Печаль
А как именно "левак" проявляется? Вроде сгенерировал, пока ничего плохого не увидел.
  
Наверх
 
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #5 - 16. Октября 2008 :: 17:45
Печать  
ок, завтра выложу
параметры процедур\функций идут обычным текстом, а не разделены.
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #6 - 17. Октября 2008 :: 05:31
Печать  
Что-то я описаний не заметил в исходниках 1С++ Печаль
Вот сам файл CreaterALS.ert - его дата 26.01.03 - поставка из версии 1.7.0.0 Улыбка
  

CreaterALS.ert ( 16 KB | Загрузки )

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #7 - 17. Октября 2008 :: 05:37
Печать  
artbear писал(а) 17. Октября 2008 :: 05:31:
Что-то я описаний не заметил в исходниках 1С++ Печаль
Вот сам файл CreaterALS.ert - его дата 26.01.03 - поставка из версии 1.7.0.0 Улыбка

Это просто создавалка. Как генерировать ALS я знаю, а вот как правильно и наиболее полно описать методы я не знаю.  Печаль
  
Наверх
 
IP записан
 
CaBaT
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 718
Местоположение: Санкт-Петербург
Зарегистрирован: 26. Октября 2007
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #8 - 17. Октября 2008 :: 05:44
Печать  
+1
Тут недавно тоже пытался поковырять эту тему - честно говоря не очень понятны некоторые моменты.

Конечно простейшее описание методов классов сделал, но например описание параметров как то странно работает.

Кстати, пришёл к такой идее: не очень удобно делать описание в файлах prm, так как загромождается описание методов,
поэтому сделал отдельный prm файл типа als.prm, в котором и делаю описание методов классов для генерирования als.

Конечно теряется идея составления документации параллельно с кодом, но мне так показалось удобнее.
А вообще было бы здорово, что бы xml-разметку можно было бы прямо в классах хранить.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #9 - 17. Октября 2008 :: 05:50
Печать  
CaBaT писал(а) 17. Октября 2008 :: 05:44:
А вообще было бы здорово, что бы xml-разметку можно было бы прямо в классах хранить.

Я тоже за это! В душе теплилась надежда, что это уже давно есть... оказывается всё не так шоколадно
  
Наверх
 
IP записан
 
CaBaT
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 718
Местоположение: Санкт-Петербург
Зарегистрирован: 26. Октября 2007
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #10 - 17. Октября 2008 :: 05:59
Печать  
JohnyDeath писал(а) 17. Октября 2008 :: 05:50:
В душе теплилась надежда, что это уже давно есть...

может конечно я не нашёл просто...

а вообще была шальная мысль написать скриптик для выдирания тегов из классов через GComp, только фиг знает когда руки дойдут, поэтому пока остановился на описанном выше варианте.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #11 - 17. Октября 2008 :: 06:15
Печать  
CaBaT писал(а) 17. Октября 2008 :: 05:59:
JohnyDeath писал(а) 17. Октября 2008 :: 05:50:
В душе теплилась надежда, что это уже давно есть...

может конечно я не нашёл просто...

а вообще была шальная мысль написать скриптик для выдирания тегов из классов через GComp, только фиг знает когда руки дойдут, поэтому пока остановился на описанном выше варианте.

Подумалось:
1. Есть методы для создания ALS из prm
2. Есть возможность брать код конкретной обработки/класса (тот же ВМ)
Может можно будет сделать так, чтобы ALS создавался сразу из обработки?
  
Наверх
 
IP записан
 
CaBaT
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 718
Местоположение: Санкт-Петербург
Зарегистрирован: 26. Октября 2007
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #12 - 17. Октября 2008 :: 06:16
Печать  
Да, мне тоже кажется, что это возможно
Может Артура попросить? А вдруг он согласится? Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #13 - 17. Октября 2008 :: 06:18
Печать  
JohnyDeath писал(а) 17. Октября 2008 :: 06:15:
CaBaT писал(а) 17. Октября 2008 :: 05:59:
JohnyDeath писал(а) 17. Октября 2008 :: 05:50:
В душе теплилась надежда, что это уже давно есть...

может конечно я не нашёл просто...

а вообще была шальная мысль написать скриптик для выдирания тегов из классов через GComp, только фиг знает когда руки дойдут, поэтому пока остановился на описанном выше варианте.

Подумалось:
1. Есть методы для создания ALS из prm
2. Есть возможность брать код конкретной обработки/класса (тот же ВМ)
Может можно будет сделать так, чтобы ALS создавался сразу из обработки?

Задумывался над этим.
1. Пока нет простой возможности получать текст произвольной обработки или класса.
Хотя для класса можно добавить встроенный метод КОП::CreateALS(ФлагИзМодуля =1, ФлагИзПрмФайла = 0) - который работает аналогично MetaInfoClasses::CreateALS

Над сложностью этой разработки не задумывался.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
CaBaT
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 718
Местоположение: Санкт-Петербург
Зарегистрирован: 26. Октября 2007
Пол: Мужской
Re: XML и ALS–документация по классам
Ответ #14 - 17. Октября 2008 :: 06:20
Печать  
Это было бы здорово! Тогда документирование было бы намного проще!
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 4
ОтправитьПечать