Задать вопрос
  • Как понять, знание типовых конфигураций? На каком уровне, программирования, или пользования?

    @Dementor
    программист, архитектор, аналитик
    То есть, вот я смотрю по вакансиям, нужно знать БУ, УТ, УПП, тд и тп. То есть я должен быть, типа, бухгалтером, чтобы пойти туда где требуется знание конфигурации БУ?
    Это следует читать как "нужно иметь сертификат 1С:Профессионал или опыт от полугода".

    Не понимаю, в каком диапазоне имеется ввиду, знание типовых конфигураций?
    Понимать назначение типовых справочников и документов, быть знакомым с заложенной в конфигурацию методологией и допустимыми настройками. Владеть навыками внесения доработок и применения обновлений от вендора.

    И как это вообще нужно учить?
    На курсах или сразу на практике. Если сидеть дома и наугад кликать кнопки в программе, толку не будет.

    Например, если в вакансии требуется понимание, или начальное знание БУ, я должен книгу на 500 страниц изучить и тогда я могу сказать я программист 1С БУ или как?
    Начальные знания - это пара статей в интернете и несколько роликов на ютубе, где рассказывают про план счетов, типовые операции и отчетность. Книга на 500 страниц - это уже продвинутый уровень.

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

    Если не знаете типовых конфигураций, то путь только во франч - там достаточно знать платформу, а остальному быстро научат. Потом сможете уйти в инхаус.

    И какие для старта нужно типовые конфигурации знать, есть самые простые с которых можно начать, или надо посмотреть какие в вакансии, почитать про них и устраиваться?
    Согласен с Александром - УТ является самой ходовой конфигурацией, после которой легко освоить все остальные.
    Ответ написан
    2 комментария
  • Какие проблемы встречаются при использование PostgreSQL для 1c на Linux Mint?

    @Dementor
    программист, архитектор, аналитик
    Если поднимаете на Минте (по сути Дебиан) сервер 1С и вам не нужны виндузные примочки, то все будет отлично. В зависимости от того как разберетесь с конфигами у вас будет проседание производительности по сравнению с виндовс и скулем на точно таком же железе или наоборот получите выигрыш.

    Если будете на линуксе использовать клиентскую часть, то тут могут ждать сюрпризы - нужно проводить тестирование. Когда-то очень давно я пробовал - были ужасные шрифты и черные квадраты вместо некоторых картинок - и я отказался от затеи (на линуксе оставил сервер, а пользователей продолжил держать на винде).
    Ответ написан
  • Одна форма на два документа, почему плохо?

    @Dementor
    программист, архитектор, аналитик
    Идея хорошая и соответствует принципам инженерии программирования. У меня на кафедре даже дипломы защищали на тему переиспользования кода.

    Плохим обычно бывает исполнение идеи. Да и платформа 1С предполагает множественное дублирование однотипного кода с небольшими правками. Это порождает холивары и многочисленные петиции к разработчикам платформы и по наследованию форм (меняешь одну и изменяются все связанные), и по инкапсуляции (чтобы сделать одну по работе с товарами и вставлять ее в другие)... Но на текущий момент "лучшей практикой" считается скопировать форму во второй документ и там ее развивать независимо.
    Ответ написан
    Комментировать
  • СписокЗначений, поиск по значению если тип искомого значения составной?

    @Dementor
    программист, архитектор, аналитик
    Для функции поиска по значению в списке значений не имеет никакого значение сколько типов в составном типе реквизита какого-то документа. Поиск по значению происходит по полному соответствию значения. Если значение уже есть в СпискеЗначений, то на выходе Истина, а иначе - Ложь.
    Ответ написан
    Комментировать
  • Как достать значение с регистра сведений в 1с?

    @Dementor
    программист, архитектор, аналитик
    1) При использовании виртуальных таблиц, таких как как СрезПоследних, отбор лучше указывать в параметрах виртуальной таблицы. Иначе при создании виртуальной таблицы тратится лишнее время на отбор записей, которые в принципе не нужны.

    2) Судя по скрину в комментарии, "Пользователь" и "Подписка" - это измерения. Следовательно в срезе последних для одного пользователя может быть несколько подписок и не все из них будут актуальными. Условие по актуальности нужно прописать в условии запроса и передать туда параметром дату актуальности документа (в зависимости от задачи может не равняться текущему времени)

    3) Чтобы получать доступ к данным выборки запроса, следует использовать метод Следующий()
    ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать();
    ВыборкаДетальныеЗаписи.Следующий(); // позиционирование на первую запись
    ВыборкаДетальныеЗаписи.Следующий(); // позиционирование на вторую запись
    Ответ написан
  • Табличная часть используется, если неизвестен объем или длина, это как понимать?

    @Dementor
    программист, архитектор, аналитик
    заранее неизвестно, какой будет объем или длина.

    Коллеги верно отметили, что трудно угадывать без контекста. Но судя по тому, что видео обучающее для новичков, то высока вероятность, что лектор хотел сказать:

    Неизвестный объем данных - значит задание еще не финализировано и для хранимых сущностей могут появляться новые описательные характеристики. Если все делать реквизитами документа, то сразу две сложности: добавить характеристику для каждого объекта в свойства документа и добавить связанный элемент формы на форму. Как пример - в документе указывается несколько контактных лиц и их контакты; изначально планировали только телефон, а потом решили добавить e-mail. Когда у тебя табличная часть, то тебе нужно один раз описать новый реквизит табличной части и добавить на форме колонку - все, у всех хранимых объектов появилось новое свойство и его можно вносить/сохранять/просматривать.

    Неизвестная длина данных - это про количество хранимых данных, про длину списка. Я видел много раз, когда в конфигурациях (даже типовых) делают "Член инвентаризационной комиссии №1", Член инвентаризационной комиссии №2", Член инвентаризационной комиссии №3"... А если еще нужно десять людей указать? Проще создать табличную часть и больше не думать о количестве.
    Ответ написан
    Комментировать
  • Как кодом добавить значение в табличной части 1с?

    @Dementor
    программист, архитектор, аналитик
    Попробуйте так:
    Элементы.Детали.ТекущиеДанные.ПлановаяДатаВозврата = ТекущаяДата() + 7 * 86400;
    Ответ написан
    1 комментарий
  • Как передать данные с первой формы во вторую?

    @Dementor
    программист, архитектор, аналитик
    1) В новую форму значение передаются через параметры формы, а там при создании они анализируются и при необходимости заполняются элементы формы:
    ОткрытьФорму(НазваниеФормы, Новый Структура("МойПараметр", 1));


    2) Для обычных форм можно получить форму и перед открытием заполнить все нужные элементы формы.

    3) Стандартное оповещение между двумя формами делается через оповещения.
    3.1) На одной стороне делаем оповещение:
    Оповестить("НазваниеСобытия", Новый Структура("МойПараметр", 1));


    3.2) а на второй форме описываем обработчик оповещения, где что-то делаем с полученными значениями:
    Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
    	Если ИмяСобытия="НазваниеСобытия" Тогда
    		Сообщить(Параметр.МойПараметр);
    	КонецЕсли; 
    КонецПроцедуры
    Ответ написан
    Комментировать
  • При попытке запустить обработку формирующую данные для обмена с сайтом вылазят ошибки, в чем может быть проблема?

    @Dementor
    программист, архитектор, аналитик
    На скрине какой-то лютый треш.
    1) используются глобальные переменные и функции, которых просто нет в базе - т.е. код написан для другой базы 7.7
    2) в строке 1448 есть ключевое слово "Иначе", перед которым нет открывающей конструкции "Если" (но есть начало цикла и потому ошибка про отсутствие конца цикла) - т.е. код просто нерабочий.
    Ответ написан
    Комментировать
  • Как просмотреть открытые базы 1С на apache + windows?

    @Dementor
    программист, архитектор, аналитик
    Открывай консоль кластера (или считывай данные через программный интерфейс). В тех базах, где в соединениях есть веб-клиенты, следовательно работают люди через веб-сервер.

    Если нужен полный список, включая те, где сейчас не работают, то нужно смотреть списки публикаций *.vrd
    Ответ написан
  • Почему ругается на параметр обмена Конвертация данных 2?

    @Dementor
    программист, архитектор, аналитик
    Советую включить отладку и остановку по ошибке.
    Ответ написан
    Комментировать
  • Как обратиться к полю таблицы через другой модуль объекта?

    @Dementor
    программист, архитектор, аналитик
    Через модуль формы можно обратиться к полю через Элемент.Товары.ТекщиеДанные.Цена,

    Это не совсем обращение к полю. Если точно, то тут - получение значения конкретной ячейки (с названием "Цена") у выделенной на форме строки табличного поля (с названием "Товары").

    Если рассматривать более детально:
    "Элементы" - это коллекция всех элементов на форме
    "Товары" - элемент формы типа "табличное поле", который связан или с таблицей значения в реквизитах формы, или с табличной частью одного из реквизитов поля (обычно это основной реквизит с названием "Объект")
    "ТекущиеДанные" - свойство табличного поля формы для доступа к данным, которые выведены на форму -т.е. содержит некоторую часть значений строки таблицы, которые программист решил сделать доступными на форме, т.е. там могут быть не все!

    Если на форме нужно получить доступ ко всем колонкам нужной строки табличной части (или таблицы значений), то нужно использовать свойство ТекущаяСтрока, в котором находится идентификатор строки, а потом получить нужную строку из реквизита формы с помощью метода НайтиПоИдентификатору()

    а как обратиться через другой модуль объекта?

    Если вы передаете в любой другой модуль контекст формы (указали форму параметром функции), то ничего не меняется. Получить данные можно по указанной выше схеме, только нужно обращаться через контекст. Т.е. будет как-то так: ПереданнаяФорма.Элементы.Товары.ТекущиеДанные.Цена

    Если вызов внешнего модуля инициируется не из формы и контекст недоступен, то такого понятия, как "выделенная на форме пользователем строка" не имеет смысла. У вас просто есть табличная часть, в которой есть множество строк, которые можно обходить итератором (в конструкции Для каждого ... Из ... Цикл), выборкой (результатом НайтиСтроки(Отбор)) или по указанному индексу.

    К примеру, обращение к значению первой строки будет иметь вид: Объект.Товары[0].Цена , а если вы работаете в модуле объекта, то и вовсе достаточно Товары[0].Цена
    Ответ написан
    Комментировать
  • Как узнать с какого IP авторизовался пользователь (IIS + 1C)?

    @Dementor
    программист, архитектор, аналитик
    В базе 1С - нигде.
    Так как туда ходит не пользователь, а IIS со своего хоста.

    Кто с каких IP подключался можно увидеть только в логах IIS.
    Ответ написан
    Комментировать
  • Как изменить сумму в документе при изменении суммы в элементе?

    @Dementor
    программист, архитектор, аналитик
    Пересчет общей суммы можно сделать:
    1) при событии изменения элемента формы в колонке таблицы
    2) при событии окончания редактирования строки таблицы
    3) при изменении таблицы
    4) в обработчике ПередЗаписью формы
    5) в обработчике ПередЗаписью объекта
    Ответ написан
    Комментировать
  • Проблема с обменом на КД2. Почему схлопывает таблицу?

    @Dementor
    программист, архитектор, аналитик
    В вопросе дан ответ. Не хотите схлопывать табличные части по ключевым полям - сделайте поиск при загрузке по номеру строки!
    Ответ написан
    Комментировать
  • Как выводить дополнительные сведения в заказе покупателя?

    @Dementor
    программист, архитектор, аналитик
    1) От Александра хорошая идея - переделать обмен со свойств на реквизиты
    2) Можно доработать форму заказа и рядом с закладкой реквизитов вывести закладку свойств
    3) Недоступность для редактирования свойств - это нестандартно, они предполагаются к заполнению пользователем вручную. Скорее всего или нет прав, или вам сделали доработку для запрета редактирования данных из сайта.
    Ответ написан
    Комментировать
  • Реально ли полному новичку пойти в 1С программисты?

    @Dementor
    программист, архитектор, аналитик
    Или данная ниша уже окончательна занята?

    В данной нише дефицит кадров.
    Ответ написан
    3 комментария
  • Почему переменная не определена?

    @Dementor
    программист, архитектор, аналитик
    В примере слева - или модуль объекта, или вообще толстый клиент. А справа - управляемая форма, где неправильно разметили видимость клиента и сервера.
    Ответ написан
    Комментировать
  • 1с автономный сервер, можно ли публиковать http сервисы?

    @Dementor
    программист, архитектор, аналитик
    Да. Это его базовая возможность:
    https://v8.1c.ru/platforma/avtonomnyy-server/
    Ответ написан
    Комментировать
  • Панель навигаций, перейти, почему не добавляется?

    @Dementor
    программист, архитектор, аналитик
    Открой свойства регистра "Стоимость материалов". Перейди на закладку "команды". Поставь галочку "Использовать стандартные команды".
    Ответ написан
    Комментировать