Ответы в темах
-
АвторСообщения
-
Odin — Одинэсник
УчастникПривет, An!
В 1С 7.7 для вывода числа прописью можно использовать функцию
Пропись(). Для этого необходимо создать файл с описанием чисел в нужном падеже и подключить его. Вот пример, как это можно сделать:1. Создайте файл
1cv7.splс содержимым, описывающим числительные. Например:1С (Код)12345678910plaintext{"Speller",{"Money",{"Рубль","Рубля","Рублей","Копейка","Копейки","Копеек","M"}},{"Numbers",{"Ноль","Один","Два","Три","Четыре","Пять","Шесть","Семь","Восемь","Девять","Десять","Одиннадцать","Двенадцать","Тринадцать","Четырнадцать","Пятнадцать","Шестнадцать","Семнадцать","Восемнадцать","Девятнадцать","Двадцать","Тридцать","Сорок","Пятьдесят","Шестьдесят","Семьдесят","Восемьдесят","Девяносто","Сто","Двести","Триста","Четыреста","Пятьсот","Шестьсот","Семьсот","Восемьсот","Девятьсот","Тысяча","Тысячи","Миллион","Миллиона","Миллиард","Миллиарда","Триллион","Триллиона"}}}2. В коде 1С подключите этот файл и используйте функцию
Пропись():1С (Код)123451CПропись("1CV7.SPL"); // Задаем использование вывода прописью из этого файлаЧисло_50_В_Род_Падеже = Формат(50, "ЧП");Сообщить(Число_50_В_Род_Падеже); // Выводит "Пятидесяти"Пропись(""); // Возвращаемся к дефолтному файлуТаким образом, вы сможете выводить числа прописью в нужном падеже.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/370200/
2 марта 2025 в 12:30 в ответ на: Как заполнить массив числовыми значениями через ПолеВвода с разделителем? #31769Odin — Одинэсник
УчастникДля заполнения массива с клавиатуры через
ПолеВводас разделителем символов и фильтрацией только числовых значений, можно использовать следующий код на языке 1С:1С (Код)123456789101112131415161718192021222324252627282930313233343536371CПроцедура ЗаполнитьМассив()// Создаем поле вводаПолеВвода = Новый ПолеВвода;ПолеВвода.Заголовок = "Введите числа, разделенные запятыми:";// Отображаем поле ввода и получаем введенные данныеВведенныеДанные = ПолеВвода.Получить();// Разделяем строку по запятойМассивСтрок = СтрРазделить(ВведенныеДанные, ",");// Создаем массив для хранения чиселМассивЧисел = Новый Массив;// Проходим по всем элементам массива строкДля Каждого Строка Из МассивСтрок Цикл// Убираем пробелы и проверяем, является ли строка числомЧисло = СтрОчистить(Строка);Если ЭтоЧисло(Число) ТогдаМассивЧисел.Добавить(Строка);КонецЕсли;КонецЦикла;// Выводим результатСообщить("Заполненный массив чисел: " + МассивЧисел.ПолучитьСтроку(", "));КонецПроцедурыФункция ЭтоЧисло(Строка)// Проверяем, является ли строка числомПопыткаЧисло = СтрToNum(Строка);Возврат Истина;ИсключениеВозврат Ложь;КонецПопытки;КонецФункцииВ этом коде:
1. Создается поле ввода для ввода данных.
2. Введенные данные разделяются по запятой.
3. Каждая строка очищается от пробелов и проверяется на числовое значение.
4. Если строка является числом, она добавляется в массив чисел.
5. В конце выводится заполненный массив чисел.Этот подход позволяет эффективно собирать только числовые значения из ввода пользователя.
Odin — Одинэсник
УчастникПривет, Корбен!
Чтобы запустить скрипт на Python из 1С, вы можете использовать команду
Выполнитьдля выполнения внешнего приложения. Вот пример кода, который демонстрирует, как это сделать:1С (Код)1234567891011121314151617181920211CПроцедура ЗапуститьPythonСкрипт()// Путь к вашему скрипту PythonПутьКСкрипту = "C:PathToYourscript.py";// Путь к интерпретатору PythonПутьКИнтерпретатору = "C:PathToPythonpython.exe";// Формируем команду для выполненияКоманда = ПутьКИнтерпретатору + " " + ПутьКСкрипту;// Выполняем командуРезультат = Выполнить(Команда);// Проверяем результат выполненияЕсли Результат 0 ТогдаСообщить("Ошибка при выполнении скрипта Python. Код ошибки: " + Строка(Результат));ИначеСообщить("Скрипт Python выполнен успешно.");КонецЕсли;КонецПроцедурыВ этом примере вы должны заменить
C:PathToYourscript.pyна фактический путь к вашему скрипту Python иC:PathToPythonpython.exeна путь к интерпретатору Python на вашем компьютере.Этот код запускает скрипт Python и проверяет, успешно ли он выполнен, выводя соответствующее сообщение.
Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать!
1 марта 2025 в 13:45 в ответ на: Какой дистрибутив Linux лучше использовать для MS SQL Server? #31765Odin — Одинэсник
УчастникДля установки MS SQL Server на Linux рекомендуется использовать следующие дистрибутивы:
1. **Red Hat Enterprise Linux (RHEL)** — это один из самых популярных дистрибутивов для серверов, который поддерживается Microsoft. Версия 7.2 и выше подходит для установки MS SQL Server.
2. **Ubuntu** — также поддерживается MS SQL Server, начиная с версии 16.04 и выше. Ubuntu имеет широкое сообщество и множество доступных ресурсов.
3. **SUSE Linux Enterprise Server (SLES)** — еще один дистрибутив, который поддерживается для работы с MS SQL Server.
Выбор дистрибутива зависит от ваших предпочтений и требований к системе. Если вы уже знакомы с одним из этих дистрибутивов, лучше использовать его для упрощения процесса администрирования.
Рекомендую посмотреть здесь: https://docs.microsoft.com/ru-ru/sql/linux/sql-server-linux-setup?view=sql-server-ver15
1 марта 2025 в 13:45 в ответ на: Какой дистрибутив Linux лучше для PostgreSQL Pro или PostgreSQL от 1С? #31763Odin — Одинэсник
УчастникВыбор дистрибутива Linux для использования с PostgreSQL зависит от ваших конкретных требований и предпочтений. Вот несколько факторов, которые стоит учесть:
1. **Поддержка и совместимость**:
— **PostgreSQL Pro**: Обычно лучше поддерживается на дистрибутивах, таких как CentOS и RHEL, так как они более распространены в корпоративной среде. Это может обеспечить более стабильную работу и доступ к обновлениям.
— **PostgreSQL от фирмы 1С**: Также может быть использован на различных дистрибутивах, но важно учитывать, что поддержка может быть ограничена, и вам может потребоваться больше усилий для настройки и оптимизации.2. **Производительность**:
— CentOS и RHEL часто показывают лучшую производительность для серверных приложений, включая базы данных, благодаря своей оптимизации и стабильности.
— Ubuntu также может быть хорошим выбором, особенно если вы уже знакомы с этой системой, но в некоторых случаях может потребоваться дополнительная настройка для достижения оптимальной производительности.3. **Сообщество и документация**:
— CentOS и RHEL имеют обширное сообщество и множество ресурсов для решения проблем, что может быть полезно при возникновении вопросов.
— Ubuntu также имеет активное сообщество, но может быть менее специализированным в контексте PostgreSQL.4. **Личное предпочтение**:
— Если вы уже имеете опыт работы с определенным дистрибутивом, возможно, стоит продолжать использовать его, так как это может сократить время на обучение и настройку.В общем, для серьезных производственных систем рекомендуется использовать CentOS или RHEL с PostgreSQL Pro, так как это обеспечит лучшую поддержку и стабильность. Если вы работаете в тестовой среде или у вас есть опыт с Ubuntu, то можно рассмотреть и его.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/1429971/
Odin — Одинэсник
УчастникПривет, Dmitry!
Для установки сервера 1С:Предприятия рекомендуется использовать следующие дистрибутивы Linux:
1. **Ubuntu** — особенно версии LTS (Long Term Support), такие как Ubuntu 20.04 LTS и 22.04 LTS. Эти версии обеспечивают стабильность и долгосрочную поддержку, что важно для серверных решений.
2. **Debian** — стабильные версии, такие как Debian 10 (Buster) и Debian 11 (Bullseye). Debian известен своей надежностью и безопасностью, что делает его хорошим выбором для серверов.
3. **CentOS** — хотя CentOS 8 больше не поддерживается, CentOS 7 все еще используется в некоторых организациях. Также можно рассмотреть переход на **AlmaLinux** или **Rocky Linux**, которые являются форками CentOS и предлагают аналогичную стабильность.
4. **Red Hat Enterprise Linux (RHEL)** — если ваша организация готова инвестировать в коммерческую поддержку, RHEL является отличным выбором для серверов 1С.
Выбор дистрибутива зависит от ваших предпочтений, опыта работы с конкретной системой и требований к поддержке. Если вы ищете простоту в установке и настройке, Ubuntu и Debian могут быть лучшими вариантами.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/805266/
28 февраля 2025 в 19:30 в ответ на: Как организовать учет взаиморасчетов с покупателями в 1С? #31759Odin — Одинэсник
УчастникПривет, Димон! Вот план решения задачи по учету взаиморасчетов с покупателями:
1. **Определение структуры данных**:
— Создать справочник «Контрагенты» с необходимыми реквизитами (название, текущий статус и т.д.).
— Создать справочник «Договоры», связанный с «Контрагентами», с реквизитами (номер договора, дата, условия и т.д.).
— Создать регистр «История статусов», который будет хранить изменения статусов контрагентов (дата изменения, старый статус, новый статус).2. **Разработка интерфейса**:
— Создать форму списка контрагентов с колонками: Название, Текущий статус.
— Создать карточку контрагента, где будет отображаться текущий статус и возможность изменения статуса.
— В карточке контрагента добавить кнопку для просмотра списка договоров, добавления нового договора и открытия существующего.3. **Реализация функционала**:
— Реализовать возможность добавления, редактирования и удаления договоров в справочнике «Договоры».
— Реализовать механизм изменения статуса контрагента с автоматическим добавлением записи в регистр «История статусов».
— Обеспечить возможность просмотра истории статусов из карточки контрагента.4. **Тестирование**:
— Провести тестирование всех функций: добавление контрагентов, изменение статусов, добавление и редактирование договоров.
— Проверить корректность отображения информации в списках и карточках.5. **Документация**:
— Подготовить документацию по использованию нового функционала для пользователей.6. **Обучение пользователей**:
— Провести обучение для пользователей по работе с новым функционалом.Этот план поможет организовать процесс разработки и внедрения учета взаиморасчетов с покупателями.
28 февраля 2025 в 17:00 в ответ на: Как решить проблемы с пустой формой и настройкой товарных групп в ЛМ «Честный зн #31757Odin — Одинэсник
УчастникДля решения проблемы с пустой формой настроек подключения ЛМ «Честный знак» в информационной системе «МП» (Управление торговлей) необходимо выполнить следующие шаги:
1. **Проверка обновлений**: Убедитесь, что у вас установлена последняя версия конфигурации «Управление торговлей» и платформы 1С. Иногда проблемы с отображением форм могут быть связаны с устаревшими версиями.
2. **Настройка подключения**:
— Перейдите в раздел «Настройки» или «Администрирование».
— Найдите пункт, связанный с «Честным знаком» или «ЛМ».
— Проверьте, правильно ли указаны параметры подключения (URL, логин, пароль и т.д.). Если данные неверные, форма может не загружаться.3. **Настройка товарных групп**:
— В разделе «Товары» или «Номенклатура» найдите настройки товарных групп.
— Убедитесь, что товарные группы созданы и активны. Если группы не созданы, создайте их через соответствующий интерфейс.
— Проверьте, что товары привязаны к нужным группам. Это можно сделать через карточку товара.4. **Проверка прав доступа**: Убедитесь, что у пользователя, под которым вы работаете, есть необходимые права доступа для просмотра и редактирования настроек.
5. **Логи и отладка**: Если проблема сохраняется, проверьте логи системы на наличие ошибок, связанных с загрузкой формы. Это может дать подсказки о том, что именно идет не так.
Если после выполнения всех шагов проблема не решена, рекомендуется обратиться в техническую поддержку 1С или к вашему интегратору для более детального анализа ситуации.
Рекомендую посмотреть здесь: https://www.chestnyznak.ru/
Odin — Одинэсник
УчастникСлужба Windows Remote Management (WinRM) предназначена для удаленного управления и автоматизации администрирования Windows-систем. Она позволяет администраторам выполнять команды и скрипты на удаленных компьютерах, а также управлять ими через различные инструменты, такие как PowerShell.
Что касается работы IIS, то без службы WinRM веб-сервер Internet Information Services (IIS) будет функционировать нормально. IIS не зависит от WinRM для своей работы. Однако, если вам нужно управлять IIS удаленно с помощью PowerShell или других инструментов, WinRM может быть полезен для упрощения этого процесса.
Таким образом, IIS будет работать и без WinRM, но для удаленного управления и автоматизации администрирования WinRM может быть полезен.
Odin — Одинэсник
УчастникЗдравствуйте, Дмитрий Николаевич!
Документ «Перемещение в эксплуатации» в ЕРП, который используется для передачи ТМЦ между материально-ответственными лицами (МОЛ), не должен интегрироваться в УХ, если в УХ нет учета МОЛов. Это связано с тем, что в УХ отсутствует необходимая структура для учета таких операций, и, следовательно, интеграция не будет корректной.
Если требуется, чтобы такие операции учитывались в УХ, необходимо доработать конфигурацию УХ, добавив возможность учета МОЛов или аналогичных сущностей, которые будут отвечать за материально-ответственные операции. Это может включать создание новых справочников или изменение существующих для учета передачи ТМЦ между сотрудниками.
Таким образом, если интеграция необходима, потребуется доработка конфигурации УХ для учета таких операций.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/501486/
28 февраля 2025 в 10:30 в ответ на: Как заполнить строки ТаблицыЗначения с нулевого индекса для каждой колонки? #31751Odin — Одинэсник
УчастникДля того чтобы новая строка каждой следующей колонки в ТаблицеЗначений начиналась с нулевого индекса, можно использовать дополнительный цикл, который будет перебирать строки для каждой колонки. Вот пример кода, который демонстрирует это:
1С (Код)12345678910111213141516171819201C// Создаем новую таблицу значенийТЗ = Новый ТаблицаЗначений;ТЗ.Колонки.Добавить("Колонка1");ТЗ.Колонки.Добавить("Колонка2");ТЗ.Колонки.Добавить("Колонка3");// Заполняем таблицу значенийДля Каждого ИндексКолонки Из Диапазон(0, 2) Цикл// Создаем новую строку для каждой колонкиНоваяСтрока = ТЗ.Добавить();// Заполняем строки для каждой колонки с нулевого индексаДля Каждого ИндексСтроки Из Диапазон(0, 5) Цикл// Пример заполнения значениямиНоваяСтрока["Колонка" + Строка(ИндексКолонки + 1)] = "Значение " + Строка(ИндексСтроки);КонецЦикла;КонецЦикла;// Теперь ТЗ заполнена, и каждая колонка начинается с нулевого индексаВ этом примере мы создаем таблицу значений с тремя колонками и заполняем каждую колонку значениями, начиная с нулевого индекса. Внутренний цикл отвечает за заполнение строк для каждой колонки.
Таким образом, вы можете контролировать, чтобы каждая новая строка начиналась с нулевого индекса.
28 февраля 2025 в 6:45 в ответ на: Куда установить Локальный Модуль Честного Знака: на сервер или рабочие места? #31749Odin — Одинэсник
УчастникЛокальный Модуль Честного Знака следует устанавливать на терминальный сервер, где развернуто приложение 1С. Это обеспечит централизованное управление и доступ к модулю для всех рабочих мест кассиров, подключающихся к серверу. Установка модуля на сервере также упростит обновления и поддержку, так как изменения будут применяться единожды на сервере, а не на каждом рабочем месте отдельно.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/1021006/
27 февраля 2025 в 19:30 в ответ на: Как написать процедуру удаления элементов справочника с условием в 1С? #31747Odin — Одинэсник
Участник1С (Код)1234567891011121314151CПроцедура УдалитьЭлементыСправочникаПоУсловиЮ()// Создаем выборку элементов справочникаВыборка = Справочники.Номенклатура.Выбрать();// Проходим по всем элементам справочникаПока Выборка.Следующий() Цикл// Проверяем условие для удаленияЕсли Выборка.Наименование = "Удалить" Тогда// Удаляем элементЭлемент = Выборка.ПолучитьОбъект();Элемент.Удалить();КонецЕсли;КонецЦикла;КонецПроцедурыВ данной процедуре происходит выборка всех элементов справочника «Номенклатура». Если наименование элемента соответствует условию (в данном случае «Удалить»), то элемент удаляется. Вы можете изменить условие в соответствии с вашими требованиями.
27 февраля 2025 в 17:00 в ответ на: Как создать обработку для автоматического заполнения документов в 1С? #31745Odin — Одинэсник
УчастникПривет, Alex!
Процедура «СведенияОВнешнейОбработке» в 1С:Предприятие используется для регистрации внешних обработок и отчетов, а также для передачи информации о них в систему. Она позволяет создавать и настраивать команды, которые могут быть вызваны из интерфейса пользователя, а также определять, какие объекты могут быть обработаны с помощью этих внешних обработок.
Для заполнения документов эта процедура может быть использована следующим образом:
1. **Регистрация внешней обработки**: Внутри процедуры создается структура, которая содержит информацию о внешней обработке, включая ее название, версию и тип.
2. **Определение назначения**: В процедуре можно указать, для каких объектов (например, документов или справочников) предназначена данная обработка. Это делается с помощью добавления идентификаторов объектов в массив назначения.
3. **Создание команд**: Внутри процедуры можно создать команды, которые будут доступны пользователю. Эти команды могут вызывать определенные действия, такие как заполнение табличных частей документов.
4. **Передача параметров**: При вызове внешней обработки можно передавать дополнительные параметры, которые могут быть использованы для настройки поведения обработки. Это может быть полезно, например, для указания конкретных значений, которые должны быть заполнены в документе.
Пример использования процедуры «СведенияОВнешнейОбработке» для заполнения документов может выглядеть следующим образом:
1С (Код)1234567891011121314151CФункция СведенияОВнешнейОбработке() ЭкспортПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиЗаполнениеОбъекта();ПараметрыРегистрации.Наименование = НСтр("ru = 'Заполнение документа'");ПараметрыРегистрации.Информация = НСтр("ru = 'Обработка для заполнения документа'");Команда = ПараметрыРегистрации.Команды.Добавить();Команда.Представление = НСтр("ru = 'Заполнить документ'");Команда.Идентификатор = "ЗаполнитьДокумент";Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();Возврат ПараметрыРегистрации;КонецФункцииВ этом примере создается обработка, которая будет заполнять документ, и регистрируется команда, которая будет вызываться из интерфейса.
Таким образом, процедура «СведенияОВнешнейОбработке» является важным инструментом для интеграции внешних обработок в 1С и позволяет эффективно управлять заполнением документов.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/2097396/
27 февраля 2025 в 15:15 в ответ на: Как выделить базу для одной из организаций без доступа к другим данным? #31743Odin — Одинэсник
УчастникВ.В., добрый день!
Для того чтобы предоставить одной организации доступ только к её данным в 1С:Предприятии, необходимо использовать механизм ограничения доступа на уровне записей. Вот пошаговая инструкция:
1. **Включите использование групп пользователей**:
— Перейдите в настройки конфигурации и включите константу «Использовать группы пользователей».2. **Создайте группу пользователей**:
— В разделе «Пользователи и права доступа» создайте новую группу, например, «Группа доступа к Организации А».3. **Добавьте пользователей в группу**:
— В состав группы добавьте пользователей, которым необходимо предоставить доступ к данным этой организации.4. **Настройте права доступа**:
— В настройках группы пользователей перейдите на вкладку «Права» и установите права доступа к организации, к которой вы хотите предоставить доступ. Убедитесь, что для других организаций права не установлены.5. **Включите ограничение доступа на уровне записей**:
— В настройках программы на вкладке «Ограничение доступа» установите галочку «Использовать ограничение права доступа на уровне записей».6. **Настройте ограничения доступа**:
— В разделе «Группы доступа» настройте ограничения для группы, чтобы пользователи видели только свою организацию. Это можно сделать через настройки прав доступа, указав, что пользователи могут видеть только записи, относящиеся к их организации.7. **Проверьте настройки**:
— Войдите под пользователем из созданной группы и убедитесь, что он видит только данные своей организации и не имеет доступа к другим.Таким образом, пользователи смогут работать только с данными своей организации, а информация о других организациях будет скрыта.
Рекомендую посмотреть здесь: [Источник](https://helpf.pro/faq/view/1496.html).
-
АвторСообщения