Программка читает файл и информационными базами 1С и строит дерево баз, позволяет запустить 1С Предприятие 8.1 или 8.2, а также конфигуратор. Естественно требует .NET framework. Исходники прилагаются, кидайте мысли по дальнейшему развитию.
Файлы
ВНИМАНИЕ:
Файлы из Базы знаний - это исходный код разработки.
Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы.
Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных.
Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Собственно первая попытка работы с 1С Предприятием из C#. Пока только полуфабрикат, который позволяет запустить выбранную базу из дерева под пользователем указанным в поле Пользователь и паролем в поле Пароль.
Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя.
Решение в Реестре отечественного ПО
Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше.
Далее в публикации:
MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.
Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.
Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.
Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.
Разработка "Дизайнер форм 1С" реализована в виде расширения 1С и является универсальным инструментом для разработки прототипа форм с целью демонстраций, технических заданий и т.д. Без участия разработчика с возможностью экспорта в файл внешней обработки и генерации формы используя искусственный интеллект.
При запуске конфигуратор 1С 8.1.:
Ошибка:
Необрабатываемое исключение в приложении.
Accessibility
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///D:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
mscorlib.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///D:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
System.Windows.Forms.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///D:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.
При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.
Код:
ProcessStartInfo startInfo = new ProcessStartInfo("C:\\Program Files\\1cv81\\bin\\1cv8.exe");
А нельзя разве использовать пути %PROGRAMFILES% (у меня например WinXP стоит не как у нормальных людей), форточки иногда и на других дисках стоят, не только на C:\>
Вот видимо и ответ на мои посты выше :) Разумеется файл не найден будет, т.к. на <C> у меня ничего нет.
Еще можно на C# вытаскивать путь к этой папке из реестра, что позволило бы оптимизировать доступ к каталогу с 1С. Это как один из возможных вариантов. Просто у меня С# не установленно, а то мог бы поиграться с вашим кодом. Но идея хорошая, за что ставлю "+"
(7) а чем это плохо?
Тем более в винде это уже практически стандартная часть оси :)
Как бы нам не хотелось но за .NET framework будущее. Если уж под линуха создан Моно...
(9) А плохо это тем, что "стандартная часть оси" это только для тех кто пишет под .NET :)
А остальным приходится скачивать довольно не маленький дистрибутив или вообще отказываться от подобных разработок, потому что нет прав на установку framework-а (как мне, например).
Впрочем, я здесь хотел сказать только, что для такой банальной вещи как "стартер" 1С тащить .NET framework вовсе не обязательно...
(13) у тебя нет прав на установку framework-а дома?
Ты не можешь скачать порядка 50 Мбайт в век безлимитного инета?
Если у тебя нет прав на установку framework-а обратись к системному администратору ;) Думаю он тебя направит в нужное русло ;) :)
А вообще думается за managed языками будущее разработки.
Ява достаточно широко используется, также будет и использоваться dot NET
(14)(15)
Да я в общем-то ничего не имею против framework-а...
Просто на данный момент ситуация сложилась так, что большинство используют в качестве "рабочей" оси - ХР. И на работе инет, естественно, не безлимитный, не говоря уже о том что я не админ...
Тут как с 7.7 и 8, ни к чему "стрелять из пушки по воробьям", я могу аналогичный стартер написать просто в блокноте, без всяких фреймворков и т.п., разве что окошко будет чуть попроще может...
ЗЫ: И читайте Джоеля Спольски, ведь умные вещи пишет, доступно:
(18)
Автор: Джоэл Сполски
Переводчик: Анар Мустафаев
28 января 2004
Пять лет прошло ужо :) Многое поменялось. Когда-то требовалось скачать некоторые dll, к примеру MFC7*.DLL
Мелкософт не зря двигает именно C#, хотя винда написана на C++ ;)
<я могу аналогичный стартер написать просто в блокноте>
я также знаю о существовании функции CreateWindow(...), вот только сколько это займет времени уже другой вопрос.
Мелкософт наконец то сделал нормальную RAD, почему бы ею не пользоваться. Хотя я сам больше сердцем тяготею к Делфям ;)
Данная програмуселька написана с целью изучения возможностей C#, а дальше будет видно...
(13) К сожалению, каких-то пару лет и без фреймворка ничего работать не будет.
Например, Винда 2008, 7, Виста уже юзают фреймворки почти по умолчанию :(
[6] Еще можно написать алгоритм на С#, который будет шифровать данные о пользователе (например, жуткий способ, делать смещение символов: Была буква А - стала буква Д, можно и посложнее). Раньше в нете лежали коды на С++, где приводился пример написания таких алгоритмов. Дальше можно шифрованные данные хранить а файле настроек или записывать в реестр.