1C и OpenServer

image_pdfimage_print

Доброго времени суток!

Начал я тут пользоваться OpenServer и конечно захотел, чтобы на нем работал и 1С.

Но проблема оказалась в том, что 1С не видит Apache 2.4×64

Нашел старенькие статьи и они оказались правдивыми https://infostart.ru/public/408897/
https://ospanel.io/forum/viewtopic.php?f=1&t=1130

Решение установка Apache как сервиса и его остановка прошла успешно и все заработало.

Для полноты приведу кусок из файла конфигурации Apache-2.4_server.conf

COM запись объектов в другой базе 1С

image_pdfimage_print

Доброго времени суток!

Возникла задача о синхронизации документов с удаленной базой по COMConnector. И делать это необходимо в реальной времени.

B вот когда уже V82.COMConnector, V83.COMConnector используется вдоль и поперек. Когда уже освоено использование NewObject(«Запрос»);

Возникает идея передачи данных в другую базу для записи. И тут открывается, что функция ПолучитьОбъект() по Com соединению не работает. Здесь как раз приходит понимание,  почему в Конвертации данных этого нет, а есть подключение по Com к обработке ОбменДаннымиXML.

И здесь нам помогут экспортные функции с одним единственном параметром  типа строка.

И добавляем экспортную функцию в другую базу(в Менеджер документа):

Ну вот так!

 

Версия компоненты ‘comcntr’ (8.3.8.2054) отличается от версии корневого модуля ‘core83’ (8.3.10.2505)

image_pdfimage_print

Доброго времени суток!

Я думал, что знаю о COM+ настройке в 1С все, но оказалось интересней с переходами платформы 8.3.8 на 8.3.10
http://sikuda.ru/archives/352

При попытке подключения из SQL базы с платформой 8.3.10 по COM к старой серверной платформе 8.3.8 выдается ошибка:

«Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Несоответствие версий клиента и сервера 1С:Предприятия
Различаются версии клиента и сервера (8.3.10.2505 — 8.3.8.2054), клиентское приложение: COM-соединение»

Раньше было достаточно зарегистрировать нужную dll из старой версии и COM соединение к новой платформе перестает работать, а к старой работает. Но теперь

К старой версии 8.3.8

Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты ‘comcntr’ (8.3.8.2054) отличается от версии корневого модуля ‘core83’ (8.3.10.2505)

К новой версии 8.3.10 такая же ошибка.

 

Шаманства типа с  регистрацией не всегда  помогают: http://novichok1c.ru/ustranenie-oshibki-pri-podklyuchenii-k-baze-dannyh-1s-cherez-com-soedinenie

Так что проблема остается. Рекомендация — устанавливать единую платформу 8.3 на все конфигурации.

Хотя некоторые и говорят, что работает https://infostart.ru/public/685924/

 

 

 

 

 

 

Операция не разрешена в предложении «ИТОГИ»

image_pdfimage_print

Доброго времени суток

Иногда в 1С пользователи жалуются на ошибку в отчетах и даже не СКД, а ПостроительОтчета

{Отчет.УниверсальныйОтчет.МодульОбъекта(580)}: Ошибка при вызове метода контекста (Вывести){Отчет.УниверсальныйОтчет.МодульОбъекта(580)}: Ошибка при вызове метода контекста (Вывести) ПостроительОтчета.Вывести(ТабличныйДокумент);по причине:{(108, 2)}: Операция не разрешена в предложении «ИТОГИ»<<?>>СУММА(ВЫРАЗИТЬ(ВложенныйЗапрос.Поле4 КАК ЧИСЛО(15, 2))) КАК Поле4,

Так вот это может происходить из-за добавления в группировки поля ресурсов. Это сделали сами пользователи! Но виноват конечно 1С и программист. У Вас ничего не работает!

Желаю Вас терпения и хорошего настроения…

 

Очистка кэша в 1С.

image_pdfimage_print

Доброго времени суток!

Проблема периодической чистки кэша в 1С стара как мир, но всегда актуальна. Всегда хочется доделать какую-то маленькую работу и сразу обновить рабочую базу, и даже если не слишком надо заказчик стоит над душой и вытягивает из Вас все жилы.

Для таких баз лучше сразу делать ярлык запуска v8i с очисткой кэша.

строка в файле: AdditionalParameters=//ClearCache

Или указать это параметр при настройке ярлыка

И сохранить этот ярлык отдельным файлом 

 

 

Источник: https://helpf.pro/faq/view/1267.htm

В связи с тем, что 1С может быть установлена на различных операционных системах, папка, где хранится кэш, может быть различной.
Для Win XP:
%userprofile%\Local Settings\Application Data\1C\1Cv82
%userprofile%\Application Data\1C\1Cv82

Для Win 7:
%userprofile%\AppData\Roaming\1C\1Cv82
%userprofile%\AppData\Local\1C\1Cv82

Серверные оси Windows 2008
C:\Users\<username>\AppData\Local\1C
C:\Users\<username>\AppData\Roaming\1C

Обход группировок в СКД

image_pdfimage_print

Доброго времени суток!

Возникла задача выгрузки сформированного отчета в СКД в несколько разных файлов по группировке верхнего уровня. Внутри этой задачи возникает задача перебора записей на втором уровне группировки.

Смотрим классический код запуска СКД:

Последняя строка нам автоматически выводит все данные в наш табличный документ. А нам надо вмешаться в этот процесс. Поэтому заменяем последнюю строку классическим кодом формирования:

И теперь как настоящие маньяки готовим скальпель. У ЭлементРезультатаКомпоновкиДанных есть массив ЗначенияПараметров с характерными названиями П1, П2, П3.. (первое поле в выводе и т.д.). Через одну правда проскакивают идентификаторы СКД, но мы их рассматривать не будем. Так как же мы может выбрать все группировки верхнего уровня?

При выводе проверяет тип выводимого поля и если он совпадает с заданным в группировке, значит это нужная группировка:

Если группировок несколько, то их выбираем также

 

 

 

 

 

 

 

Что нам стоит код 1С раскрасить?

image_pdfimage_print

Доброго времени суток!

Открыв окно в конвертации 3.0 на алгоритм 1С, был страшно разочарован. Сколько лет управляемых приложениям в 1С, а подветки кода до сих пор нет. Печалька. В своих разработках (http://widget.sikuda.ru) тоже очень сильно не хватает подсветки кода. А между тем в интернете много хорошо развитых и поддерживаемых открытых проектов не только для выделения синтаксиса, но и полноценные редакторы текста. почему бы нам не взять один из них и написать для языка 1С?

На infostart был найден подобный проект (выделение синтаксиса запросов 1С) и реализация его очень понравилась: http://infostart.ru/public/515572/. Спасибо Василию.

Приступаем: Рассмотрим проект CodeMirror(https://codemirror.net/index.html) поподробнее. А именно пока только его ту часть, что отвечает за раскраску кода. Она сделана в проекте для отдельного языка в виде ‘languge mode’. Специфики разбора выражения конкретного языка. А конкретные цвета для ключевых выражений, переменных и проч. задается в ‘CSS theming system’ . Очень гибко и красиво. Просто идеально, чтобы добавить язык 1С.

Тестирование реализации можно сделать здесь: http://sikuda.ru/1c/CodeMirror/

Пишите все Ваши замечания и предложения и особенно неточности подсветки по сравнению с конфигуратором. Детские ошибки преодолены. Всем заранее спасибо.

Обработку для 1С можно скачать http://infostart.ru/public/569016/

 

MD5 в 1С

image_pdfimage_print

Оригинал

MD5 в 1С

MD5ХешФайл(ИмяФайла) доступен только в 8.3 если у Вас 8.2 Вам приходится писать код:

Устанавливаем 1С с помощью групповых политик

image_pdfimage_print

Доброго времени суток!

Оригинал http://infostart.ru/public/296227/

Открываем редактор GP. Создаем новую политику. Открываем её для редактирования. Переходим в раздел «Конфигурация компьютера» — «Установка программ».

Создаем новый пакет. Выбираем файл 1CEnterprise 8.2.msi, путь до файла необходимо указывать через сетевое окружение \\SRV\…..\1CEnterprise 8.msi, метод развертывания выбираем — особый, для того чтобы можно было внести модификации.

После создания пакета откроется окно свойств пакета.
Необходимо перейти на закладку «Модификации»  и добавить файл трансформации для русского языка называется 1049.mst и файл трансформации Client.mst.