https://1cpp.ru/api.php?action=feedcontributions&user=FedorEzeev&feedformat=atom1cpp - User contributions [en]2024-03-29T02:15:20ZUser contributionsMediaWiki 1.35.11https://1cpp.ru/index.php?title=Template:Extension_DPL&diff=19202Template:Extension DPL2015-06-15T17:48:08Z<p>FedorEzeev: Template:Extension DPL</p>
<hr />
<div><noinclude>This page was automatically created. It serves as an anchor page for all '''[[Special:WhatLinksHere/Template:Extension_DPL|invocations]]''' of [http://mediawiki.org/wiki/Extension:DynamicPageList Extension:DynamicPageList (DPL)].</noinclude></div>FedorEzeevhttps://1cpp.ru/index.php?title=User:FedorEzeev&diff=19201User:FedorEzeev2015-06-15T02:18:50Z<p>FedorEzeev: </p>
<hr />
<div><br />
уьзен</div>FedorEzeevhttps://1cpp.ru/index.php?title=MediaWiki:Sidebar&diff=19190MediaWiki:Sidebar2015-06-14T17:01:07Z<p>FedorEzeev: </p>
<hr />
<div>* навигация<br />
** mainpage|Начало<br />
** download|Загрузить<br />
** documentation|Документация<br />
** portal-url|Обратная связь<br />
** roadmap|Хотелки<br />
** http://www.1cpp.ru/wiki/HomePage|Разработчикам<br />
** currentevents|Текущие события<br />
** sitesupport-url|Пожертвования<br />
** license|Лицензия<br />
<br />
* Прочее<br />
** recentchanges-url|Свежие правки<br />
** randompage-url|Случайная статья<br />
** helppage|Справка</div>FedorEzeevhttps://1cpp.ru/index.php?title=Reviewers&diff=19189Reviewers2015-06-14T16:51:15Z<p>FedorEzeev: Protected "Reviewers" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>{| border="1"<br />
|'''Функция''' || '''Разработчик'''<br />
|-<br />
|ООП || artbear<br />
|-<br />
|Классы "Перехватчик", "Структура", "Информатор" || artbear<br />
|-<br />
|Класс "Форма" || artbear<br />
|-<br />
|юнит-тестирование 1С++ || artbear<br />
|-<br />
|TurboBL || artbear<br />
|-<br />
|<br />
|-<br />
|Сайт, форум, багзилла || fez<br />
|-<br />
|Репозиторий || fez<br />
|-<br />
|Ночные сборки || fez<br />
|}</div>FedorEzeevhttps://1cpp.ru/index.php?title=HowToHelp&diff=19188HowToHelp2015-06-14T16:50:20Z<p>FedorEzeev: Protected "HowToHelp" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>===Как помочь проекту?===<br />
<br />
Помочь проекту можно разными способами. Не обязательно быть разработчиком. Достаточно быть пользователем.<br />
<br />
Нам нужна помощь в [[Documentation|документировании]] существующего функционала.<br />
<br />
Нам нужна помощь в поиске и исправлении ошибок.<br />
<br />
Нам нужны идеи и предложения о новом функционале.<br />
<br />
Если Вы действительно хотите помочь проекту - постарайтесь сделать это наиболее эффективно. Сейчас я постараюсь рассказать о том, как достичь наибольшей эффективности в этом вопросе.<br />
<br />
Никогда не надо забывать о том, что проект 1С++ является свободным проектом. Грубо говоря, вам никто и ничем не обязан. Не надо обижаться, если никто не захочет реализовывать Вашу супер-мега идею. Не стоит расстраиваться, если никто не захочет исправлять обнаруженный Вами баг.<br />
<br />
Однако не стоит опускать руки. Ошибки исправляются, а новый функционал добавляется. Значит это кому-то интересно. Так что первая ваша задача - найти разработчика, которому будет интересно решить Ваш вопрос. Для начала можно попробовать поговорить с [[Reviewers|ответственным]] за соответствующую часть 1С++. Даже если Вы не сможете заинтересовать его - он возможно сможет посоветовать кого-то другого.<br />
<br />
Вне зависимости от того, нашелся заинтересованный человек или нет - багрепорт, или пожелание нового функционала должно быть соответствующим образом оформлено и опубликованно. Ибо этот заинтересованный чеовек может появиться попозже. Публиковать багрепорты и пожелания функционала можно на [http://www.1cpp.ru/forum/ форуме], или в [http://cvs.alterplast.ru/bugs/ Багзилле]. Лучше пользоваться багзиллой, ветки на форуме часто тонут незамеченными заинтересованным лицом. Если задача обсуждается и в багзилле и на форуме - поставьте и там и там взаимные ссылки. При вводе задачи в багзилле - подпишите того разработчика, который, по вашему мнению, может оказаться заинтересованным в решении Вашей проблемы.<br />
<br />
Если у Вас есть вариант решения проблемы - опубликуйте его в багзилле. Лучше всего это делать в виде патча. (примечание: патч - это результат вывода юниксовой команды diff -u). Выкладывание исправленного файла "на базе версии Х-Х-Х-Х" плохо тем, что ''каждому'', кто захочет вникнуть в суть Ваших изменений, нужно будет самостоятельно получать разницу между версией Х-Х-Х-Х и вашим файлом. Эта рутинная операция может отпугнуть. Сделайте ее один раз для всех.<br />
<br />
Если сделанные Вами изменения требуют внесения исправлений или добавлений в документацию - будьте готовы сделать это.<br />
<br />
Будьте активными и самостоятельными. Старайтесь самостоятельно сделать все, что в Ваших силах.</div>FedorEzeevhttps://1cpp.ru/index.php?title=Deploys&diff=19187Deploys2015-06-14T16:48:03Z<p>FedorEzeev: Protected "Deploys" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>'''Список внедрений компоненты 1C++'''.<br />
----<br />
* ООО "Вольта", г. Ростов-на-Дону. 60 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=trdm trdm]<br />
* Mozart-House, г. Ростов-на-Дону. 10 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=quick quick]<br />
* Мебель от А до Я, г. Ростов-на-Дону. 130 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=quick quick]<br />
* ООО "ТРЕЙДИНГ-РОСТОВ", г. Ростов-на-Дону. 15 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=trdm trdm]<br />
* ООО "АЛЕКС ПЛЮС", г. Ростов-на-Дону. 10 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=trdm trdm]<br />
* [http://www.bookskazan.ru ООО "Таис", сеть магазинов "Дом Книги"], г. Казань. 40 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=pavel_tr pavel_tr]<br />
* ФГУП "Охрана", г. Кемерово. 40 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Bill Bill]<br />
* ООО "Доча" Мясокомбинат, Красноярский край. 20 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Bill Bill]<br />
* ООО "Идея плюс" Сеть магазинов стройматериалов, Красноярский край. 15 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Bill Bill]<br />
* ООО "Интерлэнд", г. Ставрополь, 40 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=leshik leshik]<br />
* Сеть аптек "Новая аптека", г. Ставрополь, г. Георгиевск, сеть из 5 торг. точек по 2 пользователя+центральный сервер [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=leshik leshik]<br />
* ООО "Наири" г. Пятигорск, 10 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=leshik leshik]<br />
* ООО "ЮгМонтаж 2000", г. Краснодар, 50 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=leshik leshik]<br />
* Лавента, г. Санкт-Петербург, 35 пользователей, [http://www.forum.mista.ru/users.php?id=31113 Попытка1С]<br />
* ОДО "АйсКинг", г.Минск, 25 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Botanik8888 Botanik8888]<br />
* [http://savicon.com.ua Транспортная компания Савикон], г. Одесса, около 10 пользователей, разработчик: ООО "ПрогТехБизнес"<br />
* [http://www.go-with-polaris.com Холдинг Полярис], г. Одесса, 35 чел. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=alyuev alyuev]<br />
* [http://www.alterplast.ru ООО "Альтерпласт"], г. Москва, 85 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=fez fez]<br />
* Украина, [http://www.ukrauto.ua/ корпорация "УкрАвто"], г. Киев, более 5000 пользователей, [http://www.forum.mista.ru/users.php?id=5268 Mashinist]<br />
* Украина, Сеть магазинов Colins, Rodi и Biaggi, г. Львов, Ивано-Франковск, Ровно, 20 чел. [http://www.forum.mista.ru/users.php?id=5268 Mashinist]<br />
* Украина, Кафе "Мапа", г. Львов, 4 чел. [http://www.forum.mista.ru/users.php?id=5268 Mashinist]<br />
* Компьютермаг, г. Мурманск, 50 пользователей, [http://www.forum.mista.ru/users.php?id=46093 johnny17]<br />
* ООО "Трансшина", г.Елец, 15 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Donat Donat]<br />
* ООО "Молочный дом", г.Елец, 12 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Donat Donat]<br />
* ООО "Автокомплект", г.Елец, 10 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Donat Donat]<br />
* ООО "Домстрой", г.Елец, 25 пользователей, [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Donat Donat]<br />
* ГК ЮтЛэнд, г. Новосибирск, 19 филиалов. Около 300 пользователей. [http://www.forum.mista.ru/users.php?id=1777 Sadovnikov]<br />
* ООО "ВентПром", г Новосибирск. 5 пользователей. [http://www.forum.mista.ru/users.php?id=1777 Sadovnikov]<br />
* ООО "Эталон", г. Липецк. 30 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Lustin lustin]<br />
* ООО "ДомТканей", г. Липецк. 20 пользователей (конфигурация "СКАТ") [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Lustin lustin]<br />
* ООО "ПланетаСтрой", г. Липецк. 15 пользователей. [http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=Lustin lustin]<br />
* [http://abv.com.ua/ Розничная сеть магазинов "АБВ-Техника"], Украина, г. Днепропетровск, более 200 пользователей (магазины+офис)[http://www.1cpp.ru/forum/YaBB.pl?action=viewprofile;username=villy villy]<br />
* ОАО "ВостокНефтеЗаводМонтаж", г. Уфа, 50-60 пользователей, разработчик: ООО "ПрогТехБизнес"<br />
* ООО "Строительный трест №3", г. Уфа, около 20 пользователей, разработчик: ООО "ПрогТехБизнес"<br />
* ООО "Пурэнергомонтаж", г. Губкинский, около 10 пользователей, разработчик: ООО "ПрогТехБизнес"<br />
* ООО "Экология", г. Уфа, не более 10, разработчик: ООО "ПрогТехБизнес"<br />
Итого: 34 внедрений, 6428 пользователей, 17 внедренцев.</div>FedorEzeevhttps://1cpp.ru/index.php?title=Telepat&diff=19186Telepat2015-06-14T16:46:45Z<p>FedorEzeev: Protected "Telepat" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>== Описание ==<br />
<br />
<br />
Телепат - это плагин для OpenConf, расширяющий возможности встроенного в Конфигуратор 1С-Предприятия 7.7 текстового редактора.<br />
<br />
Для работы используется недокументированный интерфейс взаимодействия с программой 1С-Предприятие путем прямого обращения к функциям, экспортируемых из dll-файлов 1С.<br />
<br />
текущая версия - (в файле описанания changelog до версии 2.0.0.0q) --[[User:Lustin|Lustin]] 10:14, 3 October 2008 (MSD)<br />
<br />
скачать плагин можно по адрессам<br />
* http://infostart.ru/projects/430/ - версия 2.0.0.0r<br />
* http://infostart.ru/projects/1688/ - версия 2.0.0.0u (комплект OpenConf Light Pack)<br />
<br />
----<br />
<br />
=== ТЕКУЩИЕ ВОЗМОЖНОСТИ ===<br />
* Автозавершение набираемых идентификаторов<br />
* Замена стандартного диалога "Процедуры и функции модуля"<br />
* Подсказка о параметрах методов<br />
* Быстрый переход к методам и переменным<br />
* Автозамены<br />
* Расширение возможностей механизма шаблонов<br />
* Добавление команд в контекстное меню и меню "Действия"<br />
* Дополнительная панель инструментов "Телепат" <br />
<br />
----<br />
<br />
В поставку проекта входят:<br />
* '''telepat.dll''' - библиотека плагина<br />
* '''telepat.icl''' - библиотека альтернативных иконок для списка телепата<br />
* '''telepat.vbs''' - скрипт для OpenConf<br />
* '''telepat.chm''' - файл справки<br />
* '''1cv7srct.st''' - файл шаблонов<br />
* '''readme.txt''' - описание изменения версий<br />
* '''xml2tls''' - Утилита для конвертации описания типов для Телепата из формата xml во внутренний формат телепата (соответственно существует скрипт als2xml - для того чтобы преобразовать файлы синтаксис-помощника в xml)<br />
<br />
<br />
----<br />
'''Примечания:'''<br />
* Рекомендуется использовать совместно с группой скриптов Intellisence.<br />
* также существует возможность создать файл ''telepat.words.txt'' в каталоге ''config'' - дополнительные конструкции для автоподстановки будут браться и оттуда (используется например для подстановки ключевых слов sql) [http://www.1cpp.ru/forum/YaBB.pl?num=1177678918/1#1 пример telepat.words.txt]</div>FedorEzeevhttps://1cpp.ru/index.php?title=Current_events&diff=19185Current events2015-06-14T16:41:18Z<p>FedorEzeev: Protected "Current events" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>==Выпущен релиз 1С++ 2.5.0.7 - 07.07.2008==<br />
*[- bug 3897] Исправлено неверное восстановление настроек 1С++<br />
<br />
*[+ bug 3933] Реализован единый с ВК FormEx интерфейс для удобного встраивания своих окон<br />
в качестве закладок в окно 1С "О программе..."<br />
<br />
*'''Класс "MetaInfoClasses"'''<br />
**[- bug 3937] Исправлено - методы класса было невозможно выполнить из других ВК<br />
<br />
*'''Класс "ODBCRecordSet"'''<br />
**[- bug 3936] Исправлено - свойство "md" было невозможно прочитать в других ВК<br />
<br />
*'''Класс "Перехватчик"'''<br />
**[-bug 3893] Исправлено - если в модуле формы документа нет обработчика ВводНаОсновании, не работал глобальный перехват СобытиеГМ_ВводНаОсновании<br />
<br />
**[+] новый метод Перехватчик::ВключитьРазбиениеДлинныхСтрокДляМетодаСообщить для решения старого бага 1С при выводе очень длинных строк в окно сообщений<br />
***[-bug 3711]<br />
**[-] баг Перехватчика - нельзя было установить еще один перехват на уже перехваченную форму<br />
***[-bug 3791]<br />
<br />
*'''Класс "ВыполняемыйМодуль"'''<br />
**[+] новый метод РазрешитьВложенныйВызовМетодов<br />
***[bug 1858]<br />
**[+] новый метод ПолучитьТекстМодуля()<br />
***[bug 3764]<br />
**[-] методы ВыполняемыйМодуль::GetMethOfContext и Информатор::GetMethOfContext могли вызывать падение 1С.<br />
***[bug 3775]<br />
<br />
*'''Класс "OLEDBCommand"'''<br />
**[- bug 3739] метод ДобПараметр() имеет 4 параметра, а не 5.<br />
<br />
*'''Класс "ИндексированнаяТаблица":'''<br />
**[-] ошибка при обратном итерировании по неуникальному индексу<br />
**[-] Исправлена ошибка в методах RightJoin() и FullJoin(): неверно выделялась память, что приводило к исключению, и падению 1С<br />
**[- bug 3557] Исправлена ошибка при удалении строк из неуникального индекса.<br />
**[- bug 3604] Метод КоличествоСтрок() мог возвращать неверные значения.<br />
**[- bug 3609] Заполнение строки могло разрушать индексы, в которых использована заполняемая колонка.<br />
**[- bug 3612] Неверное поведение при нулевом количестве строк.<br />
**[+] Добавлены SQL-like методы InnerJoin(), LeftJoin(), RightJoin(), FullJoin().<br />
<br />
*'''Класс "ТабличноеПоле":'''<br />
**[!] отражены изменения из ветки репозитория TF_RC3<br />
**- добавлены ФиксированныеСтроки (Шапка, Подвал), ВыделенныеСтроки, фиксация колонок и т.д.<br />
**- изменен интерфейс механизма drag-n-drop в сравнении с предыдущими релизами<br />
<br />
**[-] [bug 2584] 1C вылетает при использовании ТП:ПриУничтожении()<br />
**[-] [bug 2969] Быстрый поиск в ТабличномПоле<br />
**[-] [bug 3384] Вылет при уничтожении ТП при определенных условиях<br />
**[-] [bug 3402] Ошибка ТП (1C++ v:2.5.0.6 Nightly build newTF 2007-11 -20)<br />
**[-] [bug 3529] Вылет 1С при использовании ТП+ODBC с включеным автообновлением<br />
**[-] [bug 3565] AV в постобработке в событии Выбор()<br />
**[-] [bug 3633] Ошибка в логике обновления ТП при изменении состава видимых колонок<br />
**[-] [bug 3635] ТП теряет синхронизацию с селект-листом при переустановке провайдера<br />
**[+] [bug 3639] FR: Изменить стиль активных 3D заголовков<br />
**[-] [bug 3650] нарушение синхронизации селект-листа для поставщиков шапки и подвала<br />
<br />
*'''ODBC:'''<br />
**[+] [bug 3655] Получение текстового ИД документа для баз данных SQL формата<br />
<br />
*'''Пользовательские классы:'''<br />
<br />
**[- bug 3891] При включенной отладке 1С++ могла выдавать исключения при создании правильных классов<br />
<br />
**[-] [bug 3658] Исправлен баг - Для публичного метода класса, не описанного в prm-файле, а описанного только в модуле класса, не работает передача параметров по значению, а работает только по ссылке<br />
<br />
**+ исправление реализации динамических свойств для обеспечения нормального ООП<br />
***[bug 3606] и [bug 3592]<br />
<br />
**'''ВНИМАНИЕ (несовместимость): необходимо вручную исправление классов, реализующих динамические свойства !!'''<br />
***- Класс (или его клиент(не рекомендуется)) должен самостоятельно добавить динамическое свойство с помощью встроенного метода ДобавитьДинамическоеСвойство(стрИмяНовогоСвойства)<br />
<br />
**- [bug 3621] Исправлен неверный вызов произвольного конструктора для класса-наследника при создании класса через Фабрика.Новый()<br />
<br />
**- [bug 3589] Исправлен баг - при разном порядке объявления множественных базовых классов работа наследуемых методов класса-наследника отличается.<br />
<br />
**- Исправлено падение в случае вызова метода предка через шаблон без явного указания контекста, при условии задания параметров по умолчанию непосредственно в определении метода<br />
***http://www.1cpp.ru/forum/YaBB.pl?num=1198844355/20#20<br />
<br />
**- Исправлен баг - при одновременном чтении файлов описаний и определений классов, расположенных в текстовых и ert-файлах, разными пользователями возникали ошибки чтения файлов.<br />
<br />
**- параметры по умолчанию для методов КОП теперь могут быть определены в модулях классов, т.е. как в штатной 1С. Но если в prm-файле класса есть описание этого метода класса, приоритет будет у описания в prm-файле.<br />
<br />
*'''Класс "АктивИкс":'''<br />
**[- bug 3473] При создании АктивИкс-а на кнопке без формулы при нажатии Enter на этом АктивИкс в окне сообщений вылетает ошибка - Не обнаружена процедура ( ИмяКнопки )<br />
<br />
**- Исправлено двойное преобразование VARIANT <-> CValue при передаче в обработчик параметров типа VT_DISPATCH | VT_BYREF<br />
<br />
*'''Класс "Система":'''<br />
**- Новые методы СохранитьКартинку и ПолучитьOLEКартинку<br />
**- Новый метод Сериализовать<br />
<br />
*Добавлен '''класс "БуферОбмена/Clipboard"''' для работы с системным буфером обмена<br />
<br />
*'''Класс "Делегат":'''<br />
**- новые методы ВызватьСЗ() / ВызватьСЗПоКлючу()<br />
<br />
*'''Класс "Информатор":'''<br />
**- новый метод ПолучитьТаблицуЗагруженныхВК()<br />
**[+] новый метод ПолучитьТекстТекущегоМодуля<br />
**[+] новый метод ПолучитьТекстМодуля<br />
<br />
==Новое в ночной сборке 1С++ 2.5.0.6==<br />
<br />
===Изменения на 19.03.08===<br />
<br />
*Класс "ТабличноеПоле": <br />
**- большие изменения из ветки TF3 <br />
*Класс "ИндексированнаяТаблица": <br />
**- [- bug 3557] Исправлена ошибка при удалении строк из неуникального индекса.<br />
**- [- bug 3604] Метод КоличествоСтрок() мог возвращать неверные значения.<br />
**- [- bug 3609] Заполнение строки могло разрушать индексы, в которых использована заполняемая колонка.<br />
**- [- bug 3612] Неверное поведение при нулевом количестве строк.<br />
**- Добавлены SQL-like методы InnerJoin(), LeftJoin(), RightJoin(), FullJoin().<br />
<br />
*Пользовательские классы: <br />
**- исправление реализации динамических свойств для обеспечения нормального ООП http://cvs.alterplast.ru/bugs/show_bug.cgi?id=3606 <br />
и http://cvs.alterplast.ru/bugs/show_bug.cgi?id=3592 <br />
**'''ВНИМАНИЕ (несовместимость)''': необходимо вручную исправление классов, реализующих динамические свойства !! Класс (или его клиент(не рекомендуется)) должен самостоятельно добавить динамическое свойство с помощью встроенного метода '''ДобавитьДинамическоеСвойство'''(стрИмяНовогоСвойства)<br />
<br />
**- Исправлен неверный вызов произвольного конструктора для класса-наследника при создании класса через Фабрика.Новый() http://cvs.alterplast.ru/bugs/show_bug.cgi?id=3621 <br />
<br />
**- Исправлен баг - при разном порядке объявления множественных базовых классов работа наследуемых методов класса-наследника отличается. http://cvs.alterplast.ru/bugs/show_bug.cgi?id=3589 <br />
<br />
**- Исправлено падение в случае вызова метода предка через шаблон без явного указания контекста, при условии задания параметров по умолчанию непосредственно в определении метода http://www.1cpp.ru/forum/YaBB.pl?num=1198844355/20#20 <br />
<br />
*АктивИкс: <br />
**- Исправлено двойное преобразование VARIANT <-> CValue при передаче в обработчик параметров типа VT_DISPATCH | VT_BYREF<br />
<br />
===Изменения на 14.12.07===<br />
*Пользовательские классы:<br />
- параметры по умолчанию для методов КОП теперь могут быть определены в модулях классов, т.е. как в штатной 1С.<br />
Но если в prm-файле класса есть описание этого метода класса, приоритет будет у описания в prm-файле.<br />
<br />
===Изменения на 20.11.07===<br />
<br />
*Добавлен класс "БуферОбмена/Clipboard" для работы с системным буфером обмена <br />
<br />
*Класс "Информатор": <br />
**- новый метод ПолучитьТаблицуЗагруженныхВК() - таблица <br />
всех ВК, загруженных в сеансе 1С, в порядке их загрузки. Уверен, что многим пригодится <br />
<br />
*Класс "Делегат": <br />
**- новые методы ВызватьСЗ() / ВызватьСЗПоКлючу() <br />
<br />
Более подробно смотрите [[Documentation|Документацию]]. <br />
<br />
==Выпущены релизы 1С++ 2.5.0.5 и 2.0.3.7.==<br />
<br />
===Общие изменения===<br />
<br />
*[+] 1С++ теперь работает и под wine !!!<br />
*[+] Исправлена NLS сортировка строк в ИТ под wine / vista<br />
*[+] Учтены особенности загрузки на Windows Vista<br />
*[+] Добавлена ночная сборка файлов для интеллисенса<br />
*Мелкие улучшения и багфиксы.<br />
<br />
===Релиз 2.5.0.5===<br />
<br />
*[+] новый метод Система::ОбновитьДанныеГК на базе TurboBL<br />
добавлена возможность динамического обновления данных контекста<br />
обновление данных контекста будет использоваться, например, при<br />
динамическом добавлении атрибутов на форму или привязывания собственных объектов к контексту формы<br />
в будущем :)<br />
*[+] новый метод Информатор::ПолучитьВремяПростояСистемы()<br />
*[-] Исправлен баг - события глобального модуля:<br />
**"Событие_НеобработаннаяОшибка"<br />
**"Событие_ЗаписьСобытияЖурналаРегистрации"<br />
**"Событие_ЗаписьПользовательскогоСобытияЖурналаРегистрации" <br />
*:не всегда верно работали<br />
<br />
Класс "Перехватчик":<br />
<br />
*[-] исправлен баг - Перехватчик не всегда верно перехватывал события от сторонних ВК, например, ФормЕкс или RWidjets<br />
*[-] не работал перехват глобальных событий 1С++, например Событие_ЗаписьСобытияЖурналаРегистрации;<br />
*[*] по умолчанию настройка включения Перехватчика всегда выключена<br />
<br />
===Релиз 2.0.3.7===<br />
<br />
*[+] добавлено - методы КОП ПолучитьБазовыйОбъект, ЗаменитьБазовыйОбъект научились правильно работать с формами справочников/документов и любыми формами, т.е. с групповым контекстом. (Код портирован из версии 2.5)<br />
*[+] добавлено - КОП-ы научились наследоваться от любых форм, т.е. наследование от ГрупповойКонтекст, т.е. как в 2.5<br />
<br />
==Выпущены сборки версий 3.0.1.х - в них идет основная разработка и поддержка 1С++==<br />
<br />
[http://www.1cpp.ru/index.php/Main#.D0.A2.D0.B5.D0.BA.D1.83.D1.89.D0.B0.D1.8F_.D1.81.D0.B1.D0.BE.D1.80.D0.BA.D0.B0_icpp.2F3.0_.28.D1.80.D0.B5.D0.BA.D0.BE.D0.BC.D0.B5.D0.BD.D0.B4.D1.83.D0.B5.D1.82.D1.81.D1.8F_.D0.BA_.D0.B8.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D1.8E.29 Описание сборок 3.0.1.х]</div>FedorEzeevhttps://1cpp.ru/index.php?title=License&diff=19184License2015-06-14T16:40:23Z<p>FedorEzeev: Protected "License" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>====Компонента распространяется на условиях лицензии [http://www.gnu.org/licenses/gpl.txt GPL]====<br />
<br />
<br />
====Перевод текста лицензии на русский язык.====<br />
<br />
Copyright (C) 1989, 1991 Free Software Foundation, Inc.<br><br />
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA<br><br />
(C) Перевод. О.В. Кузина, В.М. Юфа, 1993 <br><br />
(C) Перевод. О.С. Тихонов, 1998 <br><br />
(С) Адаптация для законодательства России. <br><br />
Андрей П. Паскаль, г. Йошкар-Ола, 2000 <br><br />
<br />
<br />
Всем разрешается воспроизводить и распространять дословные копии этого <br />
лицензионного документа, но изменять его нельзя. <br />
<br />
Данный перевод не является официальным, так как не опубликован на сайте <br />
Free Software Foundation, и может использоваться только для облегчения понимания<br />
оригинально английского текста лицензии<br />
<br />
<br />
Предисловие <br />
<br />
Данная лицензия предназначена для обеспечения в рамках законодательства <br />
Российской Федерации тех же условий использования программ для ЭВМ, которые <br />
обеспечивает лицензия GPL Фонда Свободного программного обеспечения в США. <br />
<br />
Лицензии на большую часть программ для ЭВМ составлены так, чтобы лишить вас <br />
свободы совместно использовать и изменять их. Напротив, Открытая лицензия <br />
предназначена гарантировать вашу свободу совместно использовать и изменять <br />
свободные программы для ЭВМ, т.е. удостоверить, что программа для ЭВМ является <br />
свободной для всех ее пользователей. Эта Открытая лицензия аналогична лицензии <br />
GPL применяемой к большей части программ для ЭВМ Фонда Свободного программного <br />
обеспечения Вы тоже можете использовать ее для своих программ. <br />
<br />
Когда мы говорим о свободных программах для ЭВМ, мы имеем в виду свободу, а не цену. <br />
<br />
Предполагается, что Открытая лицензия гарантирует: что вы вправе распространять <br />
свободные программы для ЭВМ (и получать за это вознаграждение, если вы того желаете); <br />
что вы получаете исходный текст или можете получить его, если захотите; что вы можете <br />
изменять программу или использовать ее части в новых свободных программах; и что вы <br />
знаете, что вы можете все это делать. <br />
<br />
Чтобы защитить ваши права, нам нужно ввести такие ограничения, которые запретят кому <br />
бы то ни было отказывать вам в этих правах или потребовать от вас отказаться от этих <br />
прав. Эти ограничения переводятся в некоторые обязательства для вас, если вы <br />
распространяете программы для ЭВМ или если вы модифицируете или адаптируете их. <br />
<br />
Например, если вы распространяете такую программу для ЭВМ бесплатно или за <br />
вознаграждение, вы должны предоставить получателям все права на эту программу, <br />
которыми вы обладаете. Вы должны гарантировать, что они тоже получат или смогут <br />
получить исходный текст. И вы должны показать им эти условия, чтобы они знали о <br />
своих правах. <br />
<br />
Мы защищаем ваши права в два этапа: (1) сохраняем авторские права на программу для <br />
ЭВМ и (2) предлагаем вам эту лицензию, которая дает вам законное право воспроизводить, <br />
распространять и/или модифицировать программу. <br />
<br />
Также, чтобы защитить нас и каждого автора, мы хотим удостовериться, что все понимают, <br />
что гарантий на эти свободные программы нет. Если программа для ЭВМ модифицируется и <br />
передается кем-то еще, мы хотим, чтобы получатели программы знали, что то, что у них <br />
есть v это не оригинал, чтобы любые проблемы, созданные другими, не отразились на <br />
репутации первоначальных авторов. <br />
<br />
И наконец, каждой свободной программе для ЭВМ постоянно угрожают патенты на программы <br />
для ЭВМ. Мы хотим избежать опасности, что повторные распространители свободной <br />
программы для ЭВМ самостоятельно получат патенты, делая программу таким образом <br />
частной собственностью. Чтобы предотвратить это, мы явно заявляем, что любой <br />
патент должен быть либо предоставлен всем для свободного использования, либо не <br />
предоставлен никому. <br />
<br />
Ниже следуют точные определения и условия для воспроизведения, распространения и <br />
модификации. <br />
<br />
<br />
ОТКРЫТАЯ ЛИЦЕНЗИЯ <br />
ОПРЕДЕЛЕНИЯ И УСЛОВИЯ ДЛЯ ВОСПРОИЗВЕДЕНИЯ, РАСПРОСТРАНЕНИЯ И МОДИФИКАЦИИ <br />
Эта Лицензия применима к любой программе или другому произведению, содержащему <br />
уведомление, помещенное держателем авторских прав и сообщающее о том, что оно может <br />
распространяться при условиях, оговоренных в данной Открытой лицензии. В последующем <br />
термин "Программа" относится к любой такой программе для ЭВМ или произведению, а <br />
термин "произведение, основанное на Программе" означает Программу или любое <br />
произведение, содержащее Программу или ее часть, дословную или модифицированную, <br />
и/или переведенную на другой язык. (Здесь и далее перевод включается без ограничений <br />
в понятие "модификация".) Каждый обладатель лицензии адресуется как "вы". Виды <br />
деятельности, не являющиеся воспроизведением, распространением, выпуском в свет, <br />
адаптацией или модификацией не охватываются этой Лицензией; они за пределами ее <br />
влияния. Использование Программы по ее функциональному назначению не ограничено, и <br />
выходные данные Программы охватываются этой Лицензией, только если их содержание <br />
является произведением, основанным на Программе (вне зависимости от того, были ли <br />
они получены в процессе использования Программы). Являются ли они таковыми, зависит <br />
от того, что именно делает Программа.<br />
<br />
Вы можете воспроизводить и распространять экземпляры исходного текста Программы по его <br />
получении в любой материальной форме, при условии что вы соответствующим образом <br />
помещаете на видном месте в каждого экземпляра соответствующее уведомление об <br />
авторских правах и отказ от гарантий; оставляете нетронутыми все уведомления, <br />
относящиеся к данной Лицензии и к отсутствию каких-либо гарантий; и передаете всем <br />
другим получателям Программы экземпляр данной Лицензии вместе с Программой. Вы можете <br />
назначить плату за физический акт передачи экземпляра и можете по своему усмотрению <br />
предоставлять гарантии за вознаграждение.<br />
<br />
Вы можете изменять свой экземпляр или экземпляры Программы или любой ее части, создавая <br />
таким образом произведение, основанное на Программе, и воспроизводить и распространять <br />
эти модификации или произведение в соответствии с Разделом 2, приведенным выше, при <br />
условии, что вы выполните все нижеследующие условия:<br />
а) Вы обязаны снабдить модифицированные файлы заметными уведомлениями, содержащими <br />
указания на то, что вы изменили файлы, и дату каждого изменения. <br />
б) Вы обязаны предоставить всем третьим лицам лицензию на бесплатное использование <br />
каждого произведения, которое вы распространяете или публикуете, целиком, и которое <br />
полностью или частично содержит Программу или какую-либо ее часть, на условиях, <br />
оговоренных в данной Лицензии. <br />
в) Если модифицированная программа обычно читает команды в интерактивном режиме <br />
работы, вы должны сделать так, чтобы при запуске для работы в таком интерактивном <br />
режиме обычным для нее способом она печатала или выводила на экран объявление, <br />
содержащее соответствующее уведомление об авторских правах и уведомление о том, что <br />
гарантий нет (или, наоборот, сообщающее о том, что вы обеспечиваете гарантии), и что <br />
пользователи могут повторно распространять программу при этих условиях, и указывающее <br />
пользователю, как просмотреть копию данной Лицензии. (Исключение: если сама <br />
Программа работает в интерактивном режиме, но обычно не выводит подобное объявление, <br />
то ваше произведение, основанное на Программе, не обязано выводить объявление.) <br />
<br />
Эти требования применяются к модифицированному произведению в целом. Если известные <br />
части этого произведения не были основаны на Программе и могут обоснованно считаться <br />
независимыми и самостоятельными произведениями, то эта Лицензия и ее условия не <br />
распространяются на эти части, если вы распространяете их как отдельные произведения. <br />
Но если вы распространяете эти части как часть целого произведения, основанного на <br />
Программе, то вы обязаны делать это в соответствии с условиями данной Лицензии, <br />
распространяя права получателей лицензии на все произведение и,таким образом, на <br />
каждую часть, вне зависимости от того, кто ее написал. Такимобразом, содержание этого <br />
раздела не имеет цели претендовать на ваши права напроизведение, написанное полностью <br />
вами, или оспаривать их; цель скорее в том, чтобы развить право управлять <br />
распространением производных или коллективных произведений, основанных на Программе. <br />
Кроме того, простое нахождение другого произведения, не основанного на этой Программе, <br />
совместно с Программой (или с произведением, основанным на этой Программе) на том же <br />
материальном носителе для постоянного хранения или распространяемом материальном <br />
носителе не распространяет действие этой Лицензии на другое произведение. <br />
<br />
Вы можете копировать и распространять Программу (или произведение, основанное на ней) <br />
согласно Разделу 3) в объектном коде или в выполнимом виде в соответствии с Разделами <br />
2 и 3, приведенными выше, при условии, что вы также выполните одно из следующих <br />
требований:<br />
а) Сопроводите ее полным соответствующим машиночитаемым исходным текстом, который <br />
должен распространяться в соответствии с Разделами 2 и 3, приведенными выше, <br />
на носителе, обычно используемом для обмена ПО; или, <br />
б) Сопроводите ее письменным предложением, действительным, по крайней мере, в <br />
течение трех лет, предоставить любому третьему лицу за вознаграждение не большее <br />
стоимости физического акта изготовления экземпляра машиночитаемый экземпляр <br />
соответствующего исходного текста, подлежащий распространению в соответствии с <br />
Разделами 2 и 3, приведенными выше; или <br />
в) Сопроводите ее информацией, полученной вами в качестве предложения распространить <br />
соответствующий исходный текст. (Эта возможность допустима только для некоммерческого <br />
распространения, и только если вы получили программу в объектном коде или в выполнимом <br />
виде с предложением в соответствии с Пунктом б) выше.) <br />
<br />
Исходный текст для произведения означает его вид, предпочтительный для выполнения в <br />
нем модификаций. Для исполняемого произведения полный исходный текст означает все <br />
исходные тексты для всех модулей, которые он содержит, плюс любые связанные с <br />
произведением файлы определения интерфейса, плюс сценарии, используемые для управления <br />
компиляцией и установкой исполняемого произведения. Однако, в виде особого исключения <br />
распространяемый исходный текст не обязан включать то, что обычно предоставляется с <br />
основными компонентами операционной системы, под управлением которой работает <br />
исполняемое произведение, за исключением случая, когда сам компонент сопровождает <br />
исполняемое произведение. Если распространение исполняемого произведения или объектного <br />
кода происходит путем предоставления доступа для получения с обозначенного места, <br />
то предоставление доступа для получения исходного текста с того же места считается <br />
распространением исходного текста, даже если третьи лица не принуждаются к копированию <br />
исходного текста вместе с объектным кодом. <br />
<br />
Вы не можете воспроизводить, изменять, повторно лицензировать, или распространять <br />
Программу иначе, чем это явно предусмотрено данной Лицензией. Любая попытка <br />
воспроизводить, изменять, повторно лицензировать или распространять Программу каким-либо <br />
другим способом неправомерна и автоматически прекращает ваши права данные вам этой <br />
Лицензией. Однако лицензии лиц, получивших от вас копии или права согласно данной <br />
Открытой Лицензии, не прекратят своего действия до тех пор, пока эти лица полностью <br />
соблюдают условия.<br />
<br />
Вы не обязаны соглашаться с этой Лицензией, так как вы не подписывали ее. Однако <br />
тогда вы не получаете права модифицировать или распространять Программу или основанные <br />
на Программе произведения. Эти действия запрещены законом, если вы не принимаете к <br />
соблюдению эту Лицензию. А значит, изменяя или распространяя Программу (или <br />
произведение, основанное на Программе), вы изъявляете свое согласие с этой Лицензией <br />
и всеми ее условиями о воспроизведении, распространении или модификации Программы <br />
или произведений, основанных на ней.<br />
<br />
Каждый раз, когда вы повторно распространяете Программу (или любое произведение, <br />
основанное на Программе), получатель этого произведения автоматически получает лицензию <br />
от первоначального держателя лицензии на воспроизведение, распространение или <br />
модификацию Программы, обсуждаемую в этих определениях и условиях. Вы не можете <br />
налагать каких-либо дополнительных ограничений на осуществление получателем прав, <br />
предоставленных данным документом. Вы не несете ответственности за соблюдение третьими <br />
лицами условий этой Лицензии.<br />
<br />
Если в результате судебного разбирательства, или обвинения в нарушении патента или по <br />
любой другой причине (не обязательно связанной с патентами), вам навязаны условия, <br />
противоречащие данной Лицензии (как по решению суда, так и нет), то это не освобождает <br />
вас от соблюдения Лицензии. Если вы не можете заниматься распространением так, чтобы <br />
одновременно удовлетворить требованиям и этой Лицензии, и всем другим требованиям, то <br />
вы не должны заниматься распространением Программы. Например, если патент не позволяет <br />
безвозмездное повторное распространение Программы всем, кто получил копии от вас <br />
непосредственно или через посредников, то единственным способом удовлетворить и <br />
патенту, и этой Лицензии будет ваш полный отказ от распространения Программы. <br />
Если какая-либо часть этого раздела не имеет силы или не может быть применена при <br />
любых конкретных обстоятельствах, то подразумевается, что имеет силу остальная часть <br />
раздела, и весь Раздел имеет силу при других обстоятельствах. Цель этого раздела <br />
не побудить вас делать заявления о нарушениях прав на патент, или заявлять о других <br />
претензиях на право собственности, или оспаривать правильность подобных претензий; <br />
единственная цель этого раздела - защита целостности системы распространения свободных <br />
программ, которая реализуется использованием общих лицензий. Многие люди благодаря этой <br />
системе внесли щедрый вклад в широкий спектр распространяемых программ, полагаясь на <br />
согласованное применение этой системы; автору принадлежит право решать хочет ли он или <br />
она распространять программы в этой системе или в какой-то другой, и получатель <br />
лицензии не может влиять на принятие этого решения. Этот раздел предназначен для того, <br />
чтобы тщательно прояснить, что полагается следствием из остальной части данной Лицензии.<br />
<br />
Если распространение и/или использование Программы ограничено в ряде стран либо <br />
патентами, либо авторскими правами на интерфейсы, первоначальный обладатель авторских <br />
прав, выпускающий Программу с этой Лицензией, может добавить явное ограничение на <br />
географическое распространение, исключив такие страны, так что распространение <br />
разрешается только в тех странах, которые не были исключены. В этом случае данная <br />
Лицензия включает в себя это ограничение, как если бы оно было написано в тексте данной <br />
Лицензии.<br />
<br />
Вы можете по выбору следовать определениям и условиям либо настоящей лицензии либо <br />
любой версии GPL лицензии, когда-либо опубликованной Фондом Свободного програмного <br />
обеспечения.<br />
<br />
Если вы хотите встроить части Программы в другие свободные программы с иными условиями <br />
распространения, напишите автору с просьбой о разрешении. Для программ, которые <br />
охраняется авторскими правами Фонда Свободного ПО, напишите в Фонд Свободного ПО.<br />
<br />
<br />
НИКАКИХ ГАРАНТИЙ <br />
<br />
ПОСКОЛЬКУ ПРОГРАММА ПРЕДОСТАВЛЯЕТСЯ БЕСПЛАТНО, НА ПРОГРАММУ НЕТ ГАРАНТИЙ В ТОЙ МЕРЕ, <br />
КАКАЯ ДОПУСТИМА ПРИМЕНИМЫМ ЗАКОНОМ. ЗА ИСКЛЮЧЕНИЕМ ТЕХ СЛУЧАЕВ, КОГДА ПРОТИВНОЕ <br />
ЗАЯВЛЕНО В ПИСЬМЕННОЙ ФОРМЕ, ДЕРЖАТЕЛИ АВТОРСКИХ ПРАВ И/ИЛИ ДРУГИЕ СТОРОНЫ ПОСТАВЛЯЮТ <br />
ПРОГРАММУ "КАК ОНА ЕСТЬ" БЕЗ КАКОГО-ЛИБО ВИДА ГАРАНТИЙ, ВЫРАЖЕННЫХ ЯВНО ИЛИ <br />
ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОДРАЗУМЕВАЕМЫМИ ГАРАНТИЯМИ <br />
КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ. ВЕСЬ РИСК В ОТНОШЕНИИ <br />
КАЧЕСТВА И ПРОИЗВОДИТЕЛЬНОСТИ ПРОГРАММЫ ОСТАЕТСЯ ПРИ ВАС. ЕСЛИ ПРОГРАММА ОКАЖЕТСЯ <br />
ДЕФЕКТНОЙ, ВЫ ПРИНИМАЕТЕ НА СЕБЯ СТОИМОСТЬ ВСЕГО НЕОБХОДИМОГО ОБСЛУЖИВАНИЯ, <br />
ВОССТАНОВЛЕНИЯ ИЛИ ИСПРАВЛЕНИЯ.<br />
<br />
НИ В КОЕМ СЛУЧАЕ, ЕСЛИ НЕ ТРЕБУЕТСЯ ПОДХОДЯЩИМ ЗАКОНОМ ИЛИ НЕ УСЛОВЛЕНО В ПИСЬМЕННОЙ <br />
ФОРМЕ, НИКАКОЙ ДЕРЖАТЕЛЬ АВТОРСКИХ ПРАВ ИЛИ НИКАКОЕ ДРУГОЕ ЛИЦО, КОТОРОЕ МОЖЕТ <br />
ИЗМЕНЯТЬ И/ИЛИ ПОВТОРНО РАСПРОСТРАНЯТЬ ПРОГРАММУ, КАК БЫЛО РАЗРЕШЕНО ВЫШЕ, НЕ <br />
ОТВЕТСТВЕННЫ ПЕРЕД ВАМИ ЗА УБЫТКИ, ВКЛЮЧАЯ ЛЮБЫЕ ОБЩИЕ, СПЕЦИАЛЬНЫЕ, СЛУЧАЙНЫЕ ИЛИ <br />
ПОСЛЕДОВАВШИЕ УБЫТКИ, ПРОИСТЕКАЮЩИЕ ИЗ ИСПОЛЬЗОВАНИЯ ИЛИ НЕВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ <br />
ПРОГРАММЫ (ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОТЕРЕЙ ДАННЫХ, ИЛИ ДАННЫМИ, СТАВШИМИ <br />
НЕПРАВИЛЬНЫМИ, ИЛИ ПОТЕРЯМИ, ПОНЕСЕННЫМИ ИЗ-ЗА ВАС ИЛИ ТРЕТЬИХ ЛИЦ, ИЛИ ОТКАЗОМ <br />
ПРОГРАММЫ РАБОТАТЬ СОВМЕСТНО С ЛЮБЫМИ ДРУГИМИ ПРОГРАММАМИ), ДАЖЕ ЕСЛИ ТАКОЙ ДЕРЖАТЕЛЬ <br />
ИЛИ ДРУГОЕ ЛИЦО БЫЛИ ИЗВЕЩЕНЫ О ВОЗМОЖНОСТИ ТАКИХ УБЫТКОВ.<br />
<br />
КОНЕЦ ОПРЕДЕЛЕНИЙ И УСЛОВИЙ</div>FedorEzeevhttps://1cpp.ru/index.php?title=Roadmap&diff=19183Roadmap2015-06-14T16:39:06Z<p>FedorEzeev: Protected "Roadmap" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>'''Начало''' обсуждения на форуме: [http://www.1cpp.ru/forum/YaBB.pl?num=1194894410 начало обсуждения там]<br />
<br />
Здесь будут пожелания по реорганизации работы над компонентой и развитию функционала.<br><br />
Собственно, вопрос делится на три части: <br />
<br />
# Реорганизация среды разработки <br />
# Реорганизация внутренней структуры компоненты <br />
# Изменения функционала <br />
<br />
----<br />
<br />
* Среда разработки - VS2005 + IC(9.1-10.1) + STLport + Boost.<br><br />
Плюс по возможности переезд на редакцию контекстов Uzhast'a.<br><br />
<br />
* Создание центральной сервисной части - интерфейс для написания плагинов и межплагинного взаимодействия. <br />
Здесь надо было бы серьезно подумать, чего мы от нее хотим.<br><br />
Самая сложная часть, но и самая интересная.<br><br />
Поддержка интерфейса создания контролов, метапарсер, ООП, некоторые общие сервисы - это ядро системы.<br><br />
<br />
Все остальное - это самостоятельные плагины.<br />
<br />
* По функционалу, входящему в состав 1cpp хотелось бы видеть в виде модулей <br />
** ТП и провайдеры<br />
** ИТ<br />
** Прочее<br />
** Некоторые контролы, функциональности которых мне лично не хватает (kms).<br />
** Базовые возможности по управлению формой (типа того, что было в старом 1cpp, или еще проще)<br />
<br />
ТП - ибо может существовать множество провайдеров на все случаи жизни и нет смысла их всех везде носить с собой.<br><br />
ИТ - потому что очень хочется совсем другую логику работы, с выделенными итераторами и расширенными алгоритмами.<br><br />
Прочее - все, что не вошло в ядро и вышеперечисленные модули.<br><br />
<br />
Конечно, что этим список модулей не ограничивается.<br><br />
<br />
----<br />
<br />
Основная цель - упростить разработку и сопровождение отдельных функциональных блоков.<br><br />
<br />
* В декларацию о намерениях еще могу внести пожелание, чтобы все это работало на wine и vista.<br />
Интересно, насколько это окажется выполнимо (сейчас и там и там есть над чем работать).</div>FedorEzeevhttps://1cpp.ru/index.php?title=Documentation&diff=19182Documentation2015-06-14T16:38:45Z<p>FedorEzeev: Protected "Documentation" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>==Документация в новом формате (html & chm).==<br />
Постепенно пополняется. Может глючить. Обновляется еженочно.<br />
* '''[http://www.1cpp.ru/docum/html/ Online html документация]'''<br />
* [http://www.1cpp.ru/docum/1cpp.chm.zip Архив всех chm]<br />
* [http://www.1cpp.ru/docum/1cpp.intl.zip Файлы для Intellisense]<br />
* '''[http://www.1cpp.ru/docum/html/Compatibility.html Описание изменений, влияющие на обеспечение обратной совместимости]'''<br />
----<br />
<br />
==Текущая сборка icpp - 1C++ 3.0 ==<br />
В настоящее время идет портирование проекта '''1C++''' с MSVS 6.0 на MSVS 2005 / Intel Compiler (ICL) / STLPort.<br />
<br />
Проект носит рабочее имя '''icpp''' и на данном этапе реализованный функционал является обратно совместимым с '''1С++''' 2.5 (технический номер версии файла '''3.0''')<br />
<br />
* [http://www.1cpp.ru/index.php/Image:Icpp-latest.rar Текущий snapshot icpp/3.0 - набор всех снапшотов]<br />
* [http://www.1cpp.ru/docum/icpp/html/ Документация on-line icpp/3.0]<br />
* '''[http://www.1cpp.ru/docum/icpp/html/Compatibility.html Описание изменений в 3.X, влияющие на обеспечение обратной совместимости]'''<br />
<br />
==Документация в старом формате==<br />
(временный раздел).<br />
<br />
* [http://www.1cpp.ru/docum/1C++.als 1c++.als] - Справка в формате Синтаксис-Помощника 1С. <br />
* [http://www.1cpp.ru/docum/readme.doc readme.doc] - Основной массив документации. <br />
* [http://www.1cpp.ru/docum/history.txt history.txt] - История изменений. Иногда тут написаны важные вещи, которых больше нигде нет.<br />
* [http://www.1cpp.ru/docum/1cpp_docum.zip Вся документация] в запакованном виде.<br />
<br />
==Ветки с форумов==<br />
===Индексированная таблица значений===<br />
* http://itland.ru/forum//index.php?showtopic=12196<br />
* http://www.1cpp.ru/forum/YaBB.pl?num=1169894044<br />
<br />
==С чего начать?==<br />
<br />
#[[VeryBeginning|Самое начало.]]<br />
#[http://www.script-coding.info/1cpp.html Отличная статья для начинающих]<br />
#[[FastStartOOP|Быстрое введение в ООП под 1С++.]]<br />
#[[FAQ|Общий FAQ компоненты]]<br />
#[http://www.1cpp.ru/forum/YaBB.pl?num=1153516819 FAQ по ActiveX/АктивИкс] <br />
#Разные FAQ по прямым запросам <br />
##[http://www.1cpp.ru/forum/YaBB.pl?num=1148874473 Статья о использовании прямых запросов]<br />
##[http://www.1cpp.ru/forum/YaBB.pl?num=1148040885 FAQ. Прямые запросы в dbf]<br />
##[http://www.1cpp.ru/forum/YaBB.pl?num=1148038411 FAQ по прямым запросам]<br />
<br />
==Форум, Багтрекер==<br />
<br />
# Главный [http://www.1cpp.ru/forum/YaBB.pl форум, по ВК 1С++ и ВК FormEx]<br />
##В нем принимают активные участие как разработчики 1С++/FormEx, так и опытные пользователи 1С++/FormEx<br />
# [http://www.1cpp.ru/bugs/ Багтрекер]. Место, где лучше всего сообщать о найденных новых ошибках, и проще всего получить информацию об ошибках уже известных.<br />
<br />
Небольшая статья, рассказывающая о том, [[HowToHelp|как помочь проекту]].</div>FedorEzeevhttps://1cpp.ru/index.php?title=1cpp:Donations&diff=8361cpp:Donations2010-04-28T12:13:45Z<p>FedorEzeev: /* Эти люди не просто сказали нам спасибо, а поддержали материально! */</p>
<hr />
<div>===[[HowToHelp|Как помочь проекту?]]===<br />
<br />
=== Координаты для пожертвований через Webmoney: ===<br />
* Z293654501942 <br />
* R297018068808 <br />
<br />
=== Яндекс-деньги ===<br />
* 41001550415485<br />
<br />
Огромная просьба к пожертвователям - пишите кто вы и за что перечисляете.<br />
Просим не из-за праздного любопытства, а чтобы наша благодарность была более адресной :)<br />
<br />
----<br />
<br />
=== Эти люди не просто сказали нам спасибо, а поддержали материально! ===<br />
<br />
{|border=1<br />
| 24.11.2005 16:11 || 333.33 руб || Quan<br />
|-<br />
| 12.12.2005 12:18 || $10 || неизвестный пожертвователь из города Кирова.<br />
|- <br />
| 13.12.2005 13:58 || $5 || За Табличное Поле. С надеждой на дальнейшее развитие. DrACe, Новосибирск<br />
|- <br />
| 19.12.2005 16:23 || 1111.11 руб|| Donation of Quan В поддержку проекта 1C++<br />
|-<br />
| 28.12.2005 12:54 || $7 || Зафигарик из Мытищ. Большое спасибо за прямые запросы. Просто жизнь спас!<br />
|-<br />
| 31.03.2006 12:10 || $10 || В поддержку проекта ,а также по старым долгам! ;о) DrACe, г.Новосибирск<br />
|-<br />
| 25.04.2006 10:15 || 777.77 руб || Donation of Quan. В ознаменование выпуска релиза 2.0.2.1. А также в связи с прекрасным солнечным утром :)<br />
|-<br />
| 03.11.2006 15:19 || 777.77 руб || Donation of Quan. В ознаменование 2.0.3.1. Особо своевременна выгрузка ВыполнитьЗапрос в СписокЗначений. См. также http://itland.ru/forum//index.php?showtopic=14248<br />
|-<br />
| 20.12.2006 07:47 || 50.0 руб || Спасибо вам за 1с++. Очень ценная для меня вещь. Игорь.<br />
|-<br />
| 11.01.2007 17:20 || 271.49 руб (300 RUR Yandex) || С пожеланиями доброго здоровья проекту. mash.<br />
|-<br />
| 17.01.2007 10:35 || 48.21 руб || tav13 В помощь проекту<br />
|-<br />
| 01.04.2007 16:50 || $7.93 || "От почитателя"<br />
|-<br />
| 20.01.2008 11:33 || 30.00 руб || "На развитие проекта"<br />
|-<br />
| 28.02.2008 10:01 || 100.00 руб || Маленькое пожертвование от Bruian для славных авторов проекта. г. Красноярск<br />
|-<br />
| 15.04.2008 10:29 || 100.00 руб || C пожеланиями доброго здоровья проекту, на зависть 1cv8 от mash<br />
|-<br />
| 01.05.2008 22:55 || $0.80 || Все что было на счете, от Zealot, Киев. 1С++ - ЛУЧШЕЕ ИЗ ЛУЧШИХ<br />
|-<br />
| 25.08.2008 15:47 || 0.66 руб || А я ваще не знаю что тут происходит, я вебмоней тестирую.. Тестер из IrBit'a<br />
|-<br />
| 16.11.2008 03:31 || 64.00 руб || За прямые запросы, большое спасибо. Всё, что есть в кошельке на текущий момент :) Deryni<br />
|-<br />
| 17.07.2009 19:42 || $31.00 || За ТП, ИТ, прямые запросы и за прекрасный форум, который являет собой просто кладезь знаний. от Evgen<br />
|-<br />
| 28.10.2009 19:20 || 856.00 руб || За прямые запросы и остальное (trad и pavlo)<br />
|-<br />
| 15.04.2010 22:48 || 2487.50 руб || В поддержку проекта 1C++! (Попытка1С)<br />
|}</div>FedorEzeevhttps://1cpp.ru/index.php?title=1cpp:Community&diff=8101cpp:Community2009-12-30T15:37:12Z<p>FedorEzeev: /* Список внедрений */</p>
<hr />
<div>=== Авторы ===<br />
<br />
* Валерий Атаманюк: автор проекта Rainbow, заголовочные файлы классов 1С. <br />
* Carlos Antollini: odbccore.cpp <br />
* Дмитрий Гусев aka Deb: Основной движок 1С++ и классы РаботаСРегистром, ВыполняемыйМодуль, Делегат, МенеджерСобытий, Структура, MetaInfoClasses, подсистема прямого доступа к данным через ODBC. <br />
* Андрей Рачкин: классы DynaValue, DynaCrypt. <br />
* Алекс Фёдоров aka АЛьФ: подсистема FormEx. <br />
* Александр Орефков: класс TurboBL, Visual1C++. <br />
* Павел Шемякин aka ToyPaul: первоначальная версия подсистемы прямого доступа к данным через ODBC. <br />
* Дмитрий Ощепков aka DmitrO: доработка подсистемы прямого доступа к данным через ODBC, метапарсер имен, класс ТабличноеПоле. <br />
* Кирилл Мирошниченко aka spock: подсистема прямого доступа к данным через OLE DB. <br />
* Алексей Диркс aka ADirks: класс ИндексированнаяТаблица. <br />
* [[User:FedorEzeev|Федор Езеев aka fez]]: технический менеджер проекта. <br />
* Артур Аюханов aka artbear: система тестирования 1С++, класс Перехватчик. Куратор ООП части 1С++.<br />
<br />
=== Список внедрений ===<br />
[[Deploys]]<br />
<br />
=== Живое общение ===<br />
<br />
* [http://www.1cpp.ru/forum/YaBB.pl Официальный форум] компоненты. <br />
* [http://www.1cpp.ru/bugs/buglist.cgi?product=1C%2B%2B&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED Багтракер]. Место, где лучше всего сообщать о найденных новых ошибках, и проще всего получить информацию об ошибках уже известных. <br />
<br />
<br />
Рекомендуются к посещению еще два форума, на которых обсуждение 1С++ выделено в отдельный раздел: <br />
* [http://forum.itland.ru/index.php?showforum=8 ItLand] (Предыдущий официальный форум компоненты, с богатым архивом) <br />
* [http://www.forum.mista.ru/index.php?section=1cpp Mista] (На весну 2006 года - самый посещаемый форум по тематике 1С)</div>FedorEzeevhttps://1cpp.ru/index.php?title=Download&diff=547Download2008-08-07T16:45:26Z<p>FedorEzeev: Выпуск версии 2.5.0.7</p>
<hr />
<div>=== Рекомендованные релизы ===<br />
<br />
Рекомендованный стабильный релиз с раздельной загрузкой FormEx: '''2.5.0.7'''<br />
* [http://www.1cpp.ru/files/1cpp-2.5.0.7.zip Бинарники]<br />
* [http://www.1cpp.ru/files/1cpp-2.5.0.7.src.zip Исходники с документацией]<br />
<br />
Рекомендованный стабильный релиз c включенным FormEx: '''2.0.3.7''' <br />
* [http://www.1cpp.ru/files/1cpp-2.0.3.7.zip Бинарники]<br />
* [http://www.1cpp.ru/files/1cpp-2.0.3.7.src.zip Исходники с документацией]<br />
<br />
[http://www.1cpp.ru/files Архив версий]<br />
<br />
----<br />
=== Ночные сборки ===<br />
<br />
'''Важно.''' На вопросы о том, что вошло в ночную сборку, что не вошло, как оно работает, почему работает не так, и работает ли вообще - разработчики как правило не отвечают. Причины изложены ниже. Используйте ночные сборки только и исключительно в ознакомительных целях. <br />
<br />
* Ночная сборка производится автоматом. Сама сборка происходит в 3:10, а готовый файл выкладывается в 3:50. Соответственно, если кто-то из разработчиков 1С++ начнет в 3:00 активно коммитить файлы в репозиторий, а закончит в 3:20, то компиляция может вообще не пройти. В результате вы можете не найти файла ночной сборки. <br />
* Сам механизм сборки только запущен - возможны ошибки и сбои. В результате вы можете не найти файла ночной сборки. <br />
* Поскольку в процессе подготовки ночной сборки участвует две машини (виндовая, где происходит компиляция, и линуксовая, где установлен http сервер), то понятно, что вероятность падения в даун одной машины из двух - выше. В результате вы можете не найти ночной сборки. <br />
* Поскольку линуксовая машина живет по UTC, а виновая по MSK, то вполне может быть, что я что-то напутал со временем. И сборка произойдет позже, чем выкладывание на сайт. В результате вы можете не найти ночной сборки. <br />
* Как правило разработчики сначала пишут код. Потом его отлаживают. И только потом пишут документацию (если пишут вообще). Так что если в ночном билде что-то не работает, или работает не так, как описано в документации - это не повод сразу кидаться писать на форуме/в почту/в асю. Подобными действиями вы только замедлите работу над релизом. <br />
<br />
Короче. Если вы нашли ночную сборку на положенном ей месте, она работает, и она сегодняшняя, то скорее всего вы что-то сделали не так<br />
<br />
* Ежедневная ночная [http://www.1cpp.ru/files/nightbuild.zip сборка версии 2.5].<br />
* Ежедневная ночная сборка [http://www.1cpp.ru/docum/html онлайн документации] для версии 2.5.<br />
* Ежедневная ночная сборка [http://www.1cpp.ru/docum/1cpp.chm.zip документации в формате chm] для версии 2.5.<br />
* Ежедневная ночная сборка [http://www.1cpp.ru/docum/1cpp.intl.zip файлов для Intellicense] для версии 2.5.<br />
* Ежедневная ночная [http://www.1cpp.ru/files/nightbuild-2-3.zip сборка ветки 2.0.3].<br />
<br />
----<br />
===Доступ к репозиторию===<br />
<br />
Для тех, кто умеет работать с cvs - предоставлена возможность анонимного доступа к репозиторию 1С++ на чтение.<br />
<br />
'''cvsroot:''' ":pserver:anonymous@cvs.alterplast.ru:/usr/cvsroot"<br />
<br />
Имя модуля - "1cpp"<br />
<br />
Если вы хотите получить доступ к репозиторию на '''запись''', то сначала попробуйте выложить предлагаемые Вами изменения на [http://www.1cpp.ru/forum/YaBB.pl Форуме компоненты].<br />
<br />
<br />
----<br />
===Обои 1С++===<br />
* [[Media:1cpp_WP800x600.jpg|800x600]] (70 кб)<br />
* [[Media:1cpp_WP1024x768.jpg|1024x768]] (90 кб)<br />
* [[Media:1cpp_WP1280x1024.jpg|1280x1024]] (117 кб)<br />
<br />
----<br />
<br />
===Разные полезняшки===<br />
<br />
*[[OpenConf]]<br />
*[[Telepat]]<br />
*[[Visual1CPP| Visual 1C++]]</div>FedorEzeevhttps://1cpp.ru/index.php?title=File:1cpp_WP1280x1024.jpg&diff=394File:1cpp WP1280x1024.jpg2007-12-24T21:52:53Z<p>FedorEzeev: Обои 1280x1024</p>
<hr />
<div>Обои 1280x1024</div>FedorEzeevhttps://1cpp.ru/index.php?title=File:1cpp_WP1024x768.jpg&diff=393File:1cpp WP1024x768.jpg2007-12-24T21:52:23Z<p>FedorEzeev: Обои 1024x768</p>
<hr />
<div>Обои 1024x768</div>FedorEzeevhttps://1cpp.ru/index.php?title=File:1cpp_WP800x600.jpg&diff=390File:1cpp WP800x600.jpg2007-12-24T21:49:30Z<p>FedorEzeev: обои 800x600</p>
<hr />
<div>обои 800x600</div>FedorEzeevhttps://1cpp.ru/index.php?title=File:Boost.7z&diff=372File:Boost.7z2007-11-21T12:40:44Z<p>FedorEzeev: </p>
<hr />
<div></div>FedorEzeevhttps://1cpp.ru/index.php?title=Talk:FAQ&diff=308Talk:FAQ2007-11-01T08:00:19Z<p>FedorEzeev: Removing all content from page</p>
<hr />
<div></div>FedorEzeevhttps://1cpp.ru/index.php?title=FAQ&diff=307FAQ2007-11-01T07:59:02Z<p>FedorEzeev: /* Прочие вопросы про классы */</p>
<hr />
<div>=Вопросы новичков=<br />
<ol><br />
{{Q}}Вообще ничего не понимаю. Как начать, и если можно - по шагам.<br />
{{A}}Сходи в раздел [[Documentation]], там есть хороший раздел, посвященный разным QuickStart'ам.<br />
</ol><br />
<br />
=Где взять?=<br />
<ol><br />
{{Q}}Где взять самую последнюю версию 1С++?<br />
{{A}}[[Download]]<br />
<br />
{{Q}}Где взять не последнюю, а другую версию 1С++?<br />
{{A}}[http://www.1cpp.ru/files/ В архиве].<br />
<br />
{{Q}}Где взять документацию к компоненте?<br />
{{A}}[[Documentation]]<br />
<br />
{{Q}}А где взять визуальный редактор классов к 1С++?<br />
{{A}}Visual 1c++ и многое другое можно взять у [http://openconf.1cpp.ru Александра Орефкова].<br />
<br />
{{Q}}А где можно посмотреть на реальные примеры использования 1С++?<br />
{{A}}На том же [http://1c.proclub.ru/ Клубе профессионалов] есть [http://1c.proclub.ru/modules/mydownloads/viewcat.php?cid=131 репозитарий 1С++], да и вообще, если в разных разделах поискать по строке 1С++ - можно найти много интересного.<br><br />
''Ссылки на другие примеры всячески приветствуются''<br />
<br />
{{Q}}Документация и примеры - это конечно, хорошо, а где можно с людьми пообщаться?<br />
{{A}}На [http://www.1cpp.ru/forum/YaBB.pl официальном форуме] компоненты.<br />
Раньше форум жил на [http://itland.ru/forum/index.php?showforum=8 itland'е], теперь там архив.<br />
</ol><br />
<br />
=Проблемы при загрузке компоненты=<br />
<ol><br />
{{Q}}При выполнении отчета пишет мне вот такое: "catch (_com_error& er)".<br />
{{A}}Это msblast. Читать: [http://www.viruslist.com/viruslist.html?id=2727712 что это такое] и [http://www.microsoft.com/technet/security/bulletin/MS03-026.mspx как от этого избавиться].<br />
<br />
{{Q}}Установил компоненту 1С++, прописал в глобальник<br />
<code>ЗагрузитьВнешнююКомпоненту("1cpp.dll")</code><br />
, а у меня теперь 1С валится, говорит, что "память не может быть read". ОС - Windows NT/2000/XP. Под '95/'98/ME все нормально.<br />
{{A}}Во время первого запуска компонента регистрируется в реестре. Этот процесс должен происходить с правами администратора локальной машины.<br />
<br />
{{Q}}У меня 100 компьютеров в сети - я не могу на каждой зайти администратором. Хочу знать, что конкретно 1С++ пишет в реестр, а дальше я как-нибудь разберусь. <br />
{{A}}Эта тема обсуждалась на форуме: http://itland.ru/forum/index.php?showtopic=3627.<br />
<br />
{{Q}}При запуске 1С-Предприятия выдается следующее сообщение: "Ошибка при создании объекта из компоненты \\Адрес_сервера\Директория_БД\1CPP.dll (отсутствует интерфейс IInitDone)"<br />
{{A}}http://www.1cpp.ru/forum/YaBB.pl?num=1148543571 - там очень подробно рассказано из-за чего эта проблема возникает и предложено несколько способов ее решения.<br />
<br />
{{Q}}При запуске 1С-Предприятия выдается следующее сообщение: "Ошибка при создании объекта из компоненты \\Адрес_сервера\Директория_БД\1CPP.dll (отсутствует CLSID)"<br />
{{A}}Опять же: http://www.1cpp.ru/forum/YaBB.pl?num=1148543571<br />
<br />
{{Q}}Я в своей конфигурации использую еще несколько внешних компонент (rainbow, vtools). И боюсь, что возникнет конфликт между именами объектов этих ВК и 1С++. Как быть?<br />
{{A}}Если подгружаются несколько ВК, то 1C++ должна грузиться первой. Вообще, смеси типа Rainbow, 1C++, TurboBL - являются довольно взрывоопасными, поскольку работают через сходные механизмы подмены внутренних вызовов 1С. Старайтесь использовать только 1С++ - в ней, как правило, сосредоточен весь функционал вышеупомянутых компонент.<br />
<br />
</ol><br />
<br />
=Классы=<br />
==defcls.prm==<br />
<ol><br />
{{Q}}Создал defcls.prm, написал там одну строку, а 1С - хоть бы хны.<br />
{{A}}В <span title="В марте 2006 года этой ошибки уже не было" style="border-bottom:1px dotted">старых версиях 1С++</span> первая строка в каждом из Ваших defcls.prm должна была быть пустой. Поди догадайся.<br />
<br />
{{Q}}Не помогло.<br />
{{A}}Если вы работаете в FAR менеджере - то обратите внимание на раскладку, в которой создается Ваш defcls.prm. Она должна быть cp1251 (Win).<br />
<br />
{{Q}}Чем-нибудь отличается void от undefine? В каких случаях кого использовать?<br />
{{A}} Примерно так:<br />
* '''Void''' - обозначение того, что метод не возвращает значений вообще. В терминологии 1С - Процедура, а не Функция.<br />
* '''Undefine''' используется для типизации тех переменных/методов/параметров, для которых тип не определен / может быть любым.<br />
В общем - каждому овощу свой фрукт.<br />
<br />
{{Q}}Что-то у меня не получается создать метод со значением по умолчанию.<br />
{{A}}Как правило, именно с попытки завести метод со значениями по умолчанию начинается реальное использование файлов defcls.prm. И если что-то сразу не получается, то это значит, что нужно внимательнее отнестись к синтаксису этого файла. Известных трудностей - три.<br />
<br />
<ol><br />
<li>Когда метод со значением по умолчанию описывается в defcls.prm, то нужно указывать типы значений не только параметров, но и возвращаемого значения самого метода<br><br />
<code> '''Число''' TestMethod( Число Параметр_Ноль = 0 );</code><br />
<br />
<li>Если метод является процедурой (не возвращает никаких значений), то нужно указывать тип "возвращаемого" значения как 'void' (обязательно с маленькой буквы).<br><br />
<code>'''void''' TestMethod( Число Параметр_Ноль = 0 );</code><br />
<br />
<li>Не забывайте ставить точки с запятыми после строк описаний методов.<br />
</ol><br />
<br />
</ol><br />
<br />
==Наследование==<br />
<ol><br />
{{Q}}Объясните, плиз, на пальцах, как реализовать наследование. Есть справочник или документ определенного вида, необходимо расширить функционал, как унаследовать свойства и методы?<br />
{{A}}В defcls.prm пишешь: <br />
<br />
<source lang=1c>класс Документ_Счет = Документ_Счет.ert : Документ.Счет<br />
{};</source><br />
В Документ_Счет.ert реализуешь нужные тебе дополнительные методы, при этом для ссылки на объект документа используешь конструкцию Сам(Контекст). Например:<br />
<source lang=1c>Функция Сам(Конт)<br />
Возврат Конт;<br />
КонецФункции<br />
<br />
Функция Оплачен() Экспорт<br />
Д=СоздатьОбъект("Документ");<br />
Д.ВыбратьПодчиненныеДокументы(,,Сам(Контекст).ТекущийДокумент());<br />
Пока Д.ПолучитьДокумент()=1 Цикл<br />
Если Д.Вид()="Выписка" Тогда<br />
Возврат 1;<br />
КонецЕсли;<br />
КонецЦикла;<br />
Возврат 0;<br />
КонецФункции</source><br />
И в коде клиента тогда можно написать: <br />
<source lang=1c>Счет=СоздатьОбъект("Документ_Счет");<br />
Счет.ВыбратьДокументы(); //Используешь унаследованный метод<br />
Пока Счет.ПолучитьДокумент()=1 Цикл<br />
Если Счет.Оплачен()=0 Тогда //Используешь свой метод<br />
Сообщить("Счет "+Счет.ТекущийДокумент()+" не оплачен.");<br />
КонецЕсли;<br />
КонецЦикла;</source><br />
<br />
{{Q}}Есть класс, который является наследником от класса 1С "ТаблицаЗначений" (Назовем его "Общие.ТаблицаЗначений").<br />
Пытаемся его использовать в следующих конструкциях. <br />
<source lang=1c><br />
ТЗ = СоздатьОбъект("Общие.ТаблицаЗначений");<br />
Запрос.Выгрузить(ТЗ);<br />
Сообщить(ТипЗначенияСтр(ТЗ)); //"ТаблицаЗначений", вместо ожидаемого "Общие.ТаблицаЗначений"<br />
ТЗ = СоздатьОбъект("Общие.ТаблицаЗначений");<br />
ТЗ2 = СоздатьОбъект("ТаблицаЗначений");<br />
Запрос.Выгрузить(ТЗ2);<br />
Сообщить(ТЗ2.КоличествоСтрок()); //их больше нуля<br />
ТЗ2.Выгрузить(ТЗ);<br />
Сообщить(ТЗ.КоличествоСтрок()); // ноль<br />
</source><br />
{{A}} Метод Выгрузить() у запроса (и аналогичный у таблицы значений), предполагает, что тип передаваемого в него параметра - ТаблицаЗначений. Тот факт, что наш класс является наследником ТЗ - ничего не значит. Это класс другого типа. Нужно писать вот так: <br />
<source lang=1c><br />
ТЗ = СоздатьОбъект("Общие.ТаблицаЗначений");<br />
Запрос.Выгрузить(ТЗ.ПолучитьБазовыйКласс());<br />
Сообщить(ТипЗначенияСтр(ТЗ)); // "Общие.ТаблицаЗначений"<br />
</source><br />
Примечание Если "Общие.ТаблицаЗначений" наследует от нескольких классов, то лучше указать, какой именно базовый класс мы хотим получить: <br />
<source lang=1c><br />
ТЗ = СоздатьОбъект("Общие.ТаблицаЗначений");<br />
Запрос.Выгрузить(ТЗ.ПолучитьБазовыйКласс("ТаблицаЗначений"));<br />
Сообщить(ТипЗначенияСтр(ТЗ));<br />
</source><br />
<br />
{{Q}}А если у меня <br />
<source lang=1c>класс Наследование = classes\nasled.cls:Справочник.Номенклатура, Документ.Заявка {};</source><br />
Каким макаром наследуются одинаковые свойства и медоды? Например, Вид()? <br />
{{A}}Если не переопределить Вид() в своем классе, то вызываться будет Вид() для Справочник.Номенклатура, потому как он первый в списке классов-родителей. Можешь переопределить Вид() в своем классе, и возвращай что хочешь, например "Заявка_Номенклатура".<br />
<br />
</ol><br />
<br />
==Прочие вопросы про классы==<br />
<ol><br />
{{Q}}Насколько полна объектная модель 1С++?<br />
{{A}}Основные принципы (инкапсуляция, наследование, полиморфизм) - соблюдены. Есть ряд ограничений:<br />
* Нет перегрузки операторов и функций<br />
* Конструктор не умеет принимать параметры.<br />
* Нет возможности создать protected поле или метод.<br />
Объектная модель 1С++ очень похожа на модель, реализованную в [http://www.python.org python].<br />
<br />
{{Q}}Подсоединяю чужой класс, а мне говорит "Форма<<?>>...; Переменная не определена" <br />
{{A}}В глобальный модуль добавь строку <br />
<code>Перем Форма Экспорт; //Для отладки классов 1С++</code><br />
<br />
{{Q}}Почему когда я меняю реализацию класса в *.ert изменения не применяются до перезапуска 1С? <br />
{{A}}Сервис-Параметры-1С++ - Отжать "Оптимизация".<br />
<br />
{{Q}}Это для модулей, а как насчет описания классов? <br />
{{A}}Иерархия классов считывается при загрузке 1С++, и в течении сеанса работы не меняется.<br />
<br />
{{Q}}Как сделать, чтобы при приведении объекта в строку (СокрЛП(), Строка(), СокрЛ()) - возвращалось удобочитаемое строковое представление объекта? <br />
{{A}}Необходимо определить в классе метод _ПолучитьКод / _GetCode, который должен возвращать строковое представление объекта.<br />
Пример реализации для класса "Период" <br />
<source lang=1c>Перем Начало Экспорт;<br />
Перем Окончание Экспорт;<br />
<br />
Функция Этот(Конт)<br />
Возврат Конт;<br />
КонецФункции <br />
<br />
Функция Выбрать(Подсказка) Экспорт<br />
Если ВвестиПериод(Начало, Окончание,Подсказка)<>1 Тогда<br />
Возврат 0;<br />
Иначе<br />
Возврат 1;<br />
КонецЕсли;<br />
КонецФункции<br />
<br />
Функция _ПолучитьКод() <br />
Попытка<br />
глУстПропись(Гривня,"у"); <br />
Исключение<br />
КонецПопытки;<br />
Возврат ПериодСтр(Начало, Окончание);<br />
КонецФункции<br />
<br />
Процедура Конструктор()<br />
Начало = ПолучитьПустоеЗначение("Дата");<br />
Окончание = Начало;<br />
КонецПроцедуры<br />
</source><br />
По адресу http://itland.ru/forum/index.php?showtopic=2074 можно почитать подробное обсуждение этого вопроса.<br />
<br />
</ol></div>FedorEzeevhttps://1cpp.ru/index.php?title=Template:Q&diff=256Template:Q2007-10-29T15:34:43Z<p>FedorEzeev: </p>
<hr />
<div><li>'''Q: '''</div>FedorEzeevhttps://1cpp.ru/index.php?title=Template:A&diff=240Template:A2007-10-29T15:24:32Z<p>FedorEzeev: </p>
<hr />
<div><br>'''A: '''</div>FedorEzeevhttps://1cpp.ru/index.php?title=VeryBeginning&diff=123VeryBeginning2007-10-11T10:40:25Z<p>FedorEzeev: /* Качаем */</p>
<hr />
<div>===Качаем===<br />
<br />
Идем в раздел "[[Download|Загрузить]]", качаем бинарники самой последней версии. На данный момент это "рекомендованный стабильный релиз с раздельной загрузкой FormEx 2.5.0.3".<br />
<br />
Это архив, внутри которой лежит файл 1cpp.dll. Этот файл кладем в папку BIN каталога, где у вас установлен 1С. Обычно это будет что-то вроде C:\Program Files\1cv77\BIN<br />
<br />
Теперь, если Вы захотите использовать возможности 1С++ в какой-либо конфигурации, вам нужно в глобальном модуле, в процедуре ПриНачалеРаботыСистемы() вставить вызов <br><br />
<code>ЗагрузитьВнешнююКомпоненту("1cpp.dll");</code><br />
<br />
Уже этих бесхитростных действий достаточно для того, чтобы получить определенные бонусы. Во-первых, 1С начнет быстрее работать. Ненамного, но все-таки быстрее. Пример.<br />
<br />
===Ускоряемся===<br />
<br />
[[Media:SpeedTest.ert]]<br />
<br />
Берем пустую конфигурацию, запускаем в ней эту обработку, наслаждаемся результатами.<br />
<br />
''Естественно, это синтетический тест, который был специально написан таким образом, чтобы выставить 1С++ в самом выгодном свете.'' <br />
<br />
Редактируя содержимое процедуры ДолгаяПроцедура() вы сможете самостоятельно разобраться, какие методы каких объектов ускоряются лучше, а какие хуже.<br />
<br />
===Доступ к переменным и методам контекста===<br />
<br />
Теперь, если Вы открыли некую форму, и догадались сохранить ее контекст, то у Вас есть доступ к ее переменным, процедурам и функциям.<br />
То есть, если в модуле формы приходной накладной есть метод Печать(), то код<br />
<br />
<code><br />
КонтекстФормы = "";<br><br />
// ВыбраннаяПриходнаяНакладная - реквизит формы<br><br />
ОткрытьФорму(ВыбраннаяПриходнаяНакладная, КонтекстФормы);<br><br />
КонтекстФормы.Печать();<br><br />
КонтекстФормы.Форма.Закрыть();<br><br />
</code><br />
<br />
распечатает накладную и закроет форму.<br />
<br />
===Доступ к методу НоваяСтрока() документа===<br />
<br />
К сожалению, если Вы попробуете таким образом добавить строку в форме открытого документа - скорее всего Вас постигнет разочарование. <br />
<br />
Код:<br />
<code><br />
КонтекстФормы = "";<br><br />
ОткрытьФорму("Документ.ПриходнаяНакладная", КонтекстФормы);<br><br />
КонтекстФормы.НоваяСтрока();<br><br />
</code><br />
откроет документ, но новой строки в нем не будет.<br />
<br />
Однако разочарование будет недолгим, поскольку я сейчас его развею. Функционал, позволяющий выполнить продемонстрированный код в полном объеме есть в [http://www.dorex.ru FormEx]. Соответственно, для 1С++ версии 2.5 и выше загружаем FormEx отдельно, а для версии 1С++ ниже, чем 2.5 все будет работать и так, поскольку в состав этих версий включен функционал FormEx.<br />
<br />
===Благодарности===<br />
<br />
Указанные эффекты достигаются благодаря [http://openconf.1cpp.ru/vk/turbobl/ TurboBL]</div>FedorEzeevhttps://1cpp.ru/index.php?title=Talk:Main&diff=115Talk:Main2007-10-10T12:41:46Z<p>FedorEzeev: Removing all content from page</p>
<hr />
<div></div>FedorEzeevhttps://1cpp.ru/index.php?title=File:SpeedTest.ert&diff=99File:SpeedTest.ert2007-10-10T00:05:14Z<p>FedorEzeev: Protected "Image:SpeedTest.ert" [edit=sysop:move=sysop]</p>
<hr />
<div>Демонстрация увеличения быстродействия работы 1С при использовании 1С++</div>FedorEzeevhttps://1cpp.ru/index.php?title=User:FedorEzeev:Download&diff=83User:FedorEzeev:Download2007-10-02T15:23:44Z<p>FedorEzeev: Новая: == Набор файликов, свободных для выкачивания ==</p>
<hr />
<div><br />
== Набор файликов, свободных для выкачивания ==</div>FedorEzeevhttps://1cpp.ru/index.php?title=1cpp:%D0%A1%D0%BF%D1%80%D0%B0%D0%B2%D0%BA%D0%B0&diff=341cpp:Справка2007-10-02T10:02:01Z<p>FedorEzeev: Новая: Информацию по работе с этой вики можно найти в [http://meta.wikimedia.org/wiki/%D0%9F%D0%BE%D0%BC%D0%BE%D1%89%D1%8C:%D0%A1%D0%BE%D0%B4%D0%B5%D1%80%...</p>
<hr />
<div><br />
Информацию по работе с этой вики можно найти в [http://meta.wikimedia.org/wiki/%D0%9F%D0%BE%D0%BC%D0%BE%D1%89%D1%8C:%D0%A1%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B0%D0%BD%D0%B8%D0%B5 руководстве пользователя].<br />
<br />
==== Некоторые полезные ресурсы ====<br />
<br />
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Список возможных настроек];<br />
* [http://www.mediawiki.org/wiki/Manual:FAQ Часто задаваемые вопросы и ответы по MediaWiki];<br />
* [http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].</div>FedorEzeev