Тихомиров Владимир

28
Рейтинг

dungeonkeeper
Владимир Тихомиров



  •   Регистрация: 05.04.2011 (13 лет назад)

  •   Был(а) на сайте: 25.04.2024

Подписчики 6

Группы

Партнер IS-SP

Рейтинг 28

Замена имени сервера в файле ibases.v8i у пользователей в домене через GPO

Инструменты и обработки Системный администратор Платформа 1С v8.3 Windows Абонемент ($m) Архив с данными Сети Сервера

При переезде на новый сервер 1С возникла необходимость подготовить всех пользователей (а их 300+) к этому переезду и желательно не мешая их работе. А если быть точнее, то заменить в их списках информационных баз имя сервера. Итак, что имеем в условии.  Есть сервер 1С с именем  WIN2016.  Необходимо перенастроить всех пользователей на новый сервер с именем SRV1C. Для этого придется либо руками у каждого пользователя исправить записи по каждой базе через открытие 1С, либо поправить файл ibases.v8i, который находится в папке профиля пользователя. Второй вариант более интересен, но лезть на 300+ компьютеров не наш метод.

1 стартмани

30.11.2022    3297    1    dungeonkeeper    13       

5

Внешняя компонента 1С для подключения весового терминала Т3 и Т9 фирмы ФИЗТЕХ (x86-64)

Инструменты и обработки Системный администратор Программист Windows Абонемент ($m) Архив с данными Разработка внешних компонент Весы

Внешняя компонента 1С (*.dll) для подключения и получения данных с весового терминала Т3 и Т9 фирмы ФИЗТЕХ Update 22/01/2019 Компонента доработана для взаимодействия с терминалом Т9 (пока без возможности отправлять команды в терминал). Старую версию компоненты оставляю в файлах для скачивания, учитывайте это при скачивании. Update 20/03/2023 В архив добавлена версия для платформ x64

10 стартмани

13.11.2017    16354    6    dungeonkeeper    7       

1

Комментарии

ПубликацииПодключение по RDP из 1С с автоматическим вводом пароля#0 24.03.24 0:05
Как дать доступ сотруднику к удаленному рабочему столу (RDP), но при этом не давать пароль доступа?
ВКТребования к разработке драйверов (Электронные весы)#1 14.03.24 16:30
Добрый день.
Делаю драйвер для электронных весов по Требования к разработке драйверов и никак не могу понять как должны выполняться некоторые методы.
Вот, например, УстановитьВесТары (Calibrate) - в руководстве написано "Производит установку веса тары на весах. Если значение «ВесТары» имеет значение 0 – в качестве значения принимается текущее значение веса на весах."
Не все весы могут принимать программно такие параметры (ну или не во всех режимах). Мои весы непрерывно передают в порт текущий вес и тарирование доступно только в определенных режимах либо с кнопки на весах.
Правильно ли я понимаю. Получая в параметрах ВесТары (TareWeight) я должен сохранить значение веса тары и при следующих взвешиваниях передавать значения весов за минусом ВесТары (в этом случае значения на Весах и в 1С будут отличаться).
К стати, в "Управление нашей фирмой" (3.0.6.210) возникает ошибка при сбросе тары (в последних двух релизах точно), сначала думал проблема в моем драйвере, а оказалось на эмуляторе от 1С тоже самое.

Или вот еще.
ПараметрыВесов (ScaleOptions) дожно передаваться два параметра ИДУстройства (DeviceID) с типом STRING [IN] и ПараметрыВесов(ScaleOptions) XML таблица с типом STRING [IN]
Сама таблица выглядит так
Код
<?xml version="1.0" encoding="UTF-8"?>
<ScaleOptions
      Calibrate="true"
      WeighingEvent="true"/>

WeighingEvent - Весы поддерживают внешнее событие о получении веса.
Calibrate - Весы поддерживают тарирование.

Логичнее было бы предположить, что эти параметры должны передаваться от драйвера к 1С, но тут указано что тип STRING [IN], т.е. наоборот входящий. И что с этим делать не понятно ....

Может есть у кого опыт разработки. Поделитесь )))
ВКВК NativeAPI на Delphi и FreePascal#217 14.02.24 13:21
Вы бы хоть предупреждали, что надо использовать v8napi.pas от 16.12.2015
А то сначала скачал 1CNativeLib.zip, думал последняя версия внутри. Потом долго разбирался что с ней не так и только потом скачал v8napi.pas от 16.12.2015 с которым все заработало.
ВКВнешняя компонента устанавливается, не создает объект#6 09.02.24 14:36
Удалось ли разобраться почему не создается объект? Тоже проблема с тонким клиентом.
ВКВК NativeAPI на Delphi и FreePascal#216 09.02.24 9:56
Добрый день. Надеюсь проект еще не умер.
При использовании примера из вашего архива на стороне 1С Тонкий клиент получаю ошибку:
Цитата
Тип не определен (AddIn.DemoLib.MySuperExtention)
{Обработка.ОбработкаNativeAPI.Форма.Форма.Форма(6)}:Об = Новый("AddIn.DemoLib.MySuperExtention");

[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка]
Платформа 1С:Предприятие 8.3 (8.3.23.1865) x64
Библиотека скомпилирована x64

Не могу понять в чем причина

Код
&НаКлиенте
Процедура ТестВК(Команда)
       ПодключитьВнешнююКомпоненту("c:\Program Files\1cv8\8.3.23.1865\bin\demo.dll","DemoLib",ТипВнешнейКомпоненты.Native);
      
      Об = Новый("AddIn.DemoLib.MySuperExtention");
      
      //проверка изменения значений параметров
      П_Целое = 100;
      П_Число = 100.01;
      П_Дата = ТекущаяДата();
      П_Строка = "Измени меня, ВК.";
      
      Рез = Об.ФункцияПривет(П_Целое,П_Число,П_Дата,П_Строка);
      
      Сообщить(Рез);

      Сообщить(П_Целое);
      Сообщить(П_Число);
      Сообщить(П_Дата);
      Сообщить(П_Строка);
      
      //проверка параметров по умолчанию
      П1 = Неопределено;
      П2 = Неопределено;
      
      Рез = Об.ФункцияПривет2(,П2);
      Сообщить(Рез);
      
      Рез = Об.ФункцияПривет2(П1);
      Сообщить(Рез);
      
      Рез = Об.ФункцияПривет2("Раз","Два");
      Сообщить(Рез);
            
      
      //проверка свойств
        Сообщить(Об.СвойствоЧисло);
      Сообщить(Об.СвойствоСтрока);
      
      Об.СвойствоЧисло = 1000000;
      Об.СвойствоСтрока = "Новое значение СвойствоСтрока";
      
        Сообщить(Об.СвойствоЧисло);
      Сообщить(Об.СвойствоСтрока);
      
      //Проверка класса 2
      Об2 = Новый("AddIn.DemoLib.ВторойКласс");

        Рез = Об2.Привет();
      Сообщить(Рез);


КонецПроцедуры

Прикрепленные файлы:

demo.zip
AdminНе запускается Служба Postgres#37 28.11.23 9:09
Пожалуй добавлю свое разъяснение, поскольку недавно столкнулся с подобной историей сразу на двух серверах.
Симптомы такие. В консоли управления службами Windows, служба PostgresSQL не запущена. При попытке запустить службу руками, получаем сообщение что служба была запущена и затем остановлена.
Именно после подобных действий в журнале Windows появляются такие записи:
Цитата
< 2022-05-10 11:45:38.415 MSK >FATAL: lock file "postmaster.pid" already exists
< 2022-05-10 11:45:38.415 MSK >HINT: Is another postmaster (PID 3136) running in data directory "E:/PostgreSQLData/12"?
Причина тому проста. Для запуска сервера PostgresSQL используется управляющее приложение pg_ctl.exe, именно оно и прописано в качестве службы.
У меня выглядит так :
Цитата
"C:\Program Files\PostgreSQL\14.5-3.1C\bin\pg_ctl.exe" runservice -w -N "pgsql-14.5-3.1C-x64" -D "E:\SQL_bases\PostgreSQL\data"
А сам процесс сервера SQL выглядит вот так:
Цитата
"C:\Program Files\PostgreSQL\14.5-3.1C\bin\postgres.exe" -D "E:\SQL_bases\PostgreSQL\data"
Т.е. это другое приложение.
Если дать команду проверки состояния сервера, то мы увидим и PID процесса и сообщение о работе сервера.
Цитата
c:\Program Files\PostgreSQL\14.5-3.1C\bin>pg_ctl.exe status -D "e:\SQL_bases\PostgreSQL\data"
pg_ctl: server is running (PID: 8172)
C:/Program Files/PostgreSQL/14.5-3.1C/bin/postgres.exe "-D" "E:\SQL_bases\PostgreSQL\data"
По каким-то причинам pg_ctl.exe завершает свою работу при запуске, по этому и состояние службы в консоли не указано.
Вероятно такое поведение из-за последствий аварийного завершения работы сервера.

Теперь к самому главному, как вылечить.
Оказалось все просто. Надо сделать стоп/старт/стоп сервера Postgres через тоже самое приложение управления, таким образом корректно завершив незавершенные транзакции и только потом запустить службу
Цитата
pg_ctl.exe stop -m fast -D "E:\SQL_bases\PostgreSQL\data"
pg_ctl.exe start -D "E:\SQL_bases\PostgreSQL\data"
pg_ctl.exe stop -m fast -D "E:\SQL_bases\PostgreSQL\data"
net start pgsql-14.5-3.1C-x64
Adminне удается запустить консоль администрирования 1С#4 13.11.23 19:43
Если надо запустить консоль администрирования, но у пользователя нет прав администратора, то есть три варианта
1 - Дать права администратора
2 - Отключить UAC (контроль учетных записей).
3 - Создать скрипт запуска консоли без запроса UAC.
Например, Run1CAdmin.cmd:
Код
Set ApplicationPath="C:\Program Files\1cv8\common\1CV8 Servers (x86-64).msc"
cmd /min /C "set __COMPAT_LAYER=RUNASINVOKER && start "" %ApplicationPath%"