Задать вопрос
  • 1С как получить Имя или Заголовок дополнительного реквизита?

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

    На скрине же четко видна надпись - "Недоступно на клиенте".
    Работайте с элементами формы на сервере.

    Каждый раз формируются с новым УИНом

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

    Можете при создании для себя заполнить соответствие сгенерированых имен и заголовков. Если это соответствие хранить в реквизите формы, то можно получать заголовки без серверных вызовов.
    Ответ написан
    Комментировать
  • В каком формате 1c передает данные о картинке товара на сайт?

    @Dementor
    программист, архитектор, аналитик
    Ответ на вопрос заголовка:
    В каком формате 1c передает данные о картинке товара на сайт?

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

    Детальное описание вопроса вместо того, чтобы уточнить главный вопрос заголовка и дать необходимые детали, только путает. Полный сумбур - куча ненужной информации про наличие 1С Бухгалтерии на отдельном сервере, о крутых админах с навыками загрузки данных и про какой-то неизвестный "дром". Так же в тексте вперемешку, что данные выгружаются в "файл XML" и в "файл эксель". Вначале сами определитесь с сутью проблемы, а потом четко и лаконично задавайте вопрос.
    Ответ написан
    1 комментарий
  • Как в 1С заставить окна не прятаться за пределами экрана?

    @TheBigBear Автор вопроса
    СтарОдмины мы
    Сам спросил - сам сделал
    Почистил кэш в AppData\Roaming\1C\1cv8
    все починилось
    Всем спасибо
    Ответ написан
    Комментировать
  • Как удалить виды номенклатуры помеченные на удаление?

    @Dementor
    программист, архитектор, аналитик
    1. Заходите в меню, выбирайте последний пункт "Функции для технического специалиста" - откроется дерево функций.
    2. В дереве функций переходите на самую последнюю ветку "Стандартные", открывайте ее и выбирайте пункт "Удаление помеченных объектов".
    3. Откроется встроенная обработка чистки от помеченных с двумя вариантами работы: "Полное удаление" (начнется сразу, но может занять много времени) и "Выборочное удаление" (потребует время на составление списков из всех помеченных объектов, но зато потом можно выбрать лишь нужные и удаление пройдет очень быстро).

    Почему обработка может не удалить помеченные на удаление объекты? Если на них есть ссылки в других объектах! Нужно или удалять все, вместе со связанными объектами, или в связанных объектах зачистить ссылки на удаляемые.
    Ответ написан
    1 комментарий
  • Как интегрировать чаты и выгрузку номенклатуры Авито - 1С:Альфа-Авто?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Изучить документацию API Авито. Понять какие есть возможности (они там довольно обширные). Реализовать работу с API на стороне 1С.

    Готовые решения можно поискать на Инфостарте
    Ответ написан
    Комментировать
  • Какие курсы по 1с программированию лучше выбрать?

    @Dementor
    программист, архитектор, аналитик
    Могу дать ответ как бывший преподаватель 1С ЦСО на сертифицированных курсах по программированию и по использованию УТ и БП.

    1. Любые курсы - это всего лишь обзоры возможностей. Это как аттракционы, чтобы быстро и сразу показать красочный результат. Если нужны фундаментальные знания, то тут только самостоятельная работа поможет. При чем нельзя верить ни ИТС, ни синтаксис-помощнику в конфигураторе - все нужно лично перепроверять! Правильный выбор курса позволит получить ускорение только на первых 10% пути.

    2. Курс - это лишь план для преподавателя. Толковый преподаватель - это залог понимания материала! Когда я сам только пришел в 1С в 2006 году, то у меня был достаточно бестолковый учитель с минимальным опытом, который плавал в терминологии и "читал по книжке" (вероятно его отправили в учителя, чтобы он смог из мидлов выйти в сеньоры). Помня про него, я свои лекции всегда насыщал множеством примеров из практики. Некоторые коммерческие курсы делают завлекающие вебинары с преподавателями, а у учебных центров 1С есть каналы на Ютубе - можно посмотреть на лекторов, на их стиль преподавания.

    3. Если курсы хреновые, то студенты жалуются. Посмотрите отзывы в интернете - если сами курсы плохо составлены, если преподаватели неопытные, то люди об этом должны массово писать. Лично никогда не гуглил эту тему, но в чатах очень много негатива на скилбоксовцев из-за несоответствия обещаний результатам.
    Ответ написан
    2 комментария
  • В каком порядке соединяются таблицы в запросе?

    в каком порядке компоновщик таблиц соединяет таблицы


    Запрос выполняется СУБД. Платформа 1С:Предприятие работает с пятью разными типами СУБД: собственной (файловый вариант), Microsoft SQL Server, IBM DB2, Oracle Database и PostgreSQL. Не считая различий в версиях.

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

    Так что однозначного ответа на ваш вопрос нет.
    Ответ написан
    Комментировать
  • Существует ли в природе полноценный справочник по 1С, в частности erp?

    @Dementor
    программист, архитектор, аналитик
    Существует ли в природе полноценный справочник по 1С, в частности erp?

    Не существует в природе. Если кто-то попробует написать, то на 10% первые страницы уже будут устаревшие со скриншотами, которые показывают устаревший и отмененный функционал.

    ИТС не предлагать

    Это не просто универсальный справочник с данными про платформу 1С, про использование конфигураций и про все что связано с использованием продуктов 1С. Это единственный справочник!

    Да банально по интерфейсу конфигуратора путеводителя нет, скриншоты из ИТС не соответствует реальности.

    Потому что никто не видит в этом смысла. Рассказать про основные функции конфигуратора - это 10 минут и на Ютубе полно роликов на эту тему. За 20 лет со времен 8.0 интерфейс конфигуратора менялся мало - несколько новых фишек добавили и все. А вот если бы вы подключили себе Снегопат или Турбоконф (моды от сторонних команд, которые позволяют подключать свои плагины, меняющие конфигуратор до неузнаваемости), то даже хороший и регулярно обновляемый путеводитель вам уже не поможет ))

    не говоря о сотнях документов, регистров и прочих внутренностях конфигурации которые неизвестно как работают и взаимодействуют.

    Открою "секрет Полишинеля" - даже большинство разработчиков не знают назначения всех объектов конфигураций, которые они сами же разрабатывают. Все знают только архитекторы и методисты, которые пишут книги и учебные курсы, за которые потом берут деньги.
    Ответ написан
    Комментировать
  • Как получить данные из 1с с помощью yii2?

    @Dementor
    программист, архитектор, аналитик
    Если хотите ограничится только программированием на PHP, то включите в базе 1С интерфейс оdata (REST API к данным).
    Ответ написан
    Комментировать
  • Как в 1С Фреш настроить Торговые предложения для товара?

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

    Bitrix - это семейство программ для создания сайтов под самые разнообразные цели.

    Торговые предложения - это сущность торгового каталога Bitrix24 для описания особенностей товара (цвет, размер, пол и т.п.). Ближайшие аналоги в "1С:Управление торговлей" - это Характеристики и Серии Номенклатуры.

    Как в 1С Фреш настроить Торговые предложения для импорта в Bitrix?

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

    Для самостоятельного выполнения настроек предварительно нужно сертифицироваться по вашей версии базы 1С и по вашему продукту Bitrix. Все требуемые настройки со стороны обоих программных продуктах будут освещены в соответствующих разделах учебных курсов.
    Ответ написан
    Комментировать
  • Как в 1С Odata отфильтровать выборку по дате изменения?

    Fragster
    @Fragster
    помогло? отметь решением!
    Вроде как понятно, что дата изменения также быть обязана.

    Не обязана, если разработчик не добавил подобного реквизита с соответствующим поведением. В случае типовой конфигурации можете попросить сделать это разработчика с помощью расширений.
    А вообще для регистрации изменений в 1с традиционно используются планы обмена - при изменении данных в дополнительные таблички пишут то, что изменилось, для кого эти изменения предназначены и забирал ли он их:
    https://v8.1c.ru/platforma/plan-obmena/
    Ответ написан
    5 комментариев
  • Как и чем лучше делать бэкап баз 1c?

    @Dementor
    программист, архитектор, аналитик
    кто чем и как делает бекап баз 1с (клиент-серверная архитектура)?

    Делал только стандартными средствами СУБД.

    Когда полностью админил одну базу на PostgreSQL, то у меня был в кроне скрипт, который регулярно выгружал бэкапы утилитой pg_dump. Админы моих баз на MsSQL обычно делали ночью полные бекапы и в течении дня по расписанию сохраняли разностные.
    Ответ написан
    Комментировать
  • Как исправить мой код 1С: Предприятие нахождение максимального элемента в табличной части чтоб он не выдавал ошибку?

    @Dementor
    программист, архитектор, аналитик
    Давайте смотреть, что не так с вашим кодом без детального анализа, а просто что сразу бросается в глаза:
    1. Поломанное форматирование. Пока 8 строчек как тут - это просто эстетическая боль, но когда строчек 80, 800 или 8000, то это маскирует ошибки, на которые уйдет больше чем три дня
    2. Снова таки, с точки зрения облегчения восприятия, нужно все делать в едином стиле - делаете переменные с маленькой буквы - они все должны быть с маленькой, а делаете с большой, то все уже с большой. В коде половина маленькие, половина большие без какой-либо систему. То же замечание касается ключевых слов - если не используете системное автодополнение, которое само за вас все ключевые слова пишет с большой буквы, и по личным предпочтениям начинаете писать с маленькой - то пишите с маленькой уже все подряд, а не "тогда" с маленькой, а "Цикл" с большой
    3. Использование переменных в духе "а и б сидели на трубе" крайне не рекомендовано - все переменные должны в своем имени отражать свое содержимое. Если лень писать СтрокаТабличнойЧастиГоловныхУборов, то хотя бы СтрокаТЧ, но никогда не "а"!!!
    4. Выборка из менеджера объекта полезная штука для некоторых сценариев, но конкретно тут просто увеличивается "углеродный след". Достаточно выполнить запрос сразу к табличной части, в котором тут же получить максимальное количество, а не вытаскивать в оперативку все объекты
    5. Вы уверены, что в табличной части запрещены отрицательные числа? На каком основании в переменную для сравнения вы размещаете ноль?
    6. Для вас же было бы понятнее, если бы вы не использовали явное сравнение, в котором допустили ошибку, а воспользовались стандартной функцией Макс()
    7. Ну и на финал, этот некрасивый и абсолютно не оптимальный код может даже заработать (но выдавать неправильное значение), если из переменной Макс2 (смотрим пункт №3 про нормальные наименования) типа Число не пытаться прочитать свойство "Количество_материалов". Такое ощущение, что было несколько черновиков кода и в одном из них сохранялось не максимальное значение, а сама строка табличной части, а потом все варианты свалили в единую кучу


    Upd. Я смотрел поверхностно, но другие более детально и подсказали в комментариях про необходимость обхода выборки данных с помощью метода Следующий().

    Итого, если не переписывать на запрос, то правильный код будет следующим:

    Выборка=Справочники.Варианты_головных_уборов.Выбрать(); 
    МаксКоличество = Неопределено;
    Пока Выборка.Следующий() Цикл
    	Для каждого СтрокаКоличества  из Выборка.ТабличнаяЧасть1 Цикл
    		Если МаксКоличество = Неопределено тогда
    			МаксКоличество = СтрокаКоличества.Количество_материалов;
    		Иначе
    			МаксКоличество = Макс(МаксКоличество, СтрокаКоличества.Количество_материалов);
    		КонецЕсли;        		
    	КонецЦикла; 
    КонецЦикла; 
    МаксКоличество = ?(МаксКоличество=Неопределено, 0, МаксКоличество);
    Сообщить(МаксКоличество);
    Ответ написан
    2 комментария
  • ЗУП - Документ "ОтпускБезСохраненияОплаты" как предоставить доступ к элементам формы, для определенной группы доступа?

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

    Базовые понятия:
    1) У элемента формы есть свойство видимость, которым можно управлять программно
    2) У элемента формы есть доступность по ролям, где можно для указанных ролей разрешить или запретить видимость
    3) У элементов формы можно управлять видимостью по функциональным опциям
    Ответ написан
    5 комментариев
  • Как передавать данные на сайт и обратно?

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

    2. Путь бизнесмена
    2.1. Проверить существующие решения на предмет совместимости с сайтом и 1С
    2.2 Если готового для покупки нет, то нанять специалистов для разработки.

    P.S. 1С и Laravel - это фреймворки, каждый из которых имеет широкий диапазон имплементаций.
    Ответ написан
    Комментировать
  • Как автоматически проставлять автора в 1с?

    @Dementor
    программист, архитектор, аналитик
    Пользователь должен заполняться при создании документа. Пользователь должен заполняться, при открытии ранее созданного документа, если в документе не был заполнен автор.

    Ты решил использовать событие записи документа - это противоречит постановке задачи. Там требуют устанавливать автора (если он отсутствует) при открытии документа (при создании формы).

    Создал Параметры сеанса "ТекущийПользователь"

    Т.е. у тебя какая-то своя конфа, которую пишешь с нуля? Ну тогда не сильно заморачивайся - в модуле установки параметров сеанса оставь код по запросу параметра пользователя (сюда 1С стучится, когда кто-то явно запрашивает параметр сеанса - если кода установки нет, то будет ошибка обращения к неинициированному параметру), где оставь как в твоем примере получение текущего пользователя ИБ и поиск по идентификатору в справочнике пользователей.

    У тебя же справочник Пользователей самостоятельно заполняется по данным пользователей ИБ? Если нет, то задача не имеет решения, так как сначала нужно связать пользователей ИБ и элементы справочника для указания авторства документов. Для сдачи задачи можешь временно сделать поиск по наименованию и вручную проконтролируй, чтобы имена справочника Пользователи соответствовали логинам системы.
    Ответ написан
    9 комментариев
  • Как вывести общую сумму в подвал табличной части?

    fosihas
    @fosihas
    Автоматизации учета на 1С.
    Вообщеее, все несколько хитрей)

    Все зависит, что у вас за какой тип у объекта Табличная часть - Таблица значений, Динамический список, Табличная Часть (справочника/документа).
    И у каждой из них своя логика вывода. От указаная прям в свойствах Реквизита Табличной части что надо выводить Итог по колонке, то описания кодом.

    65c3b9ca9af3f644979814.png
    Ответ написан
    Комментировать
  • Как правильно сформировать фильтр запроса по odata?

    @Dementor
    программист, архитектор, аналитик
    Оператора in в принципе нет в 1С.
    Для OData так же как и для обычного 1С-кодирования нужно выкручиваться через поиск подстроки:

    bool substringof(string searchString, string searchInString)

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

    @Dementor
    программист, архитектор, аналитик
    Два очевидных варианта:
    1) Исправить запрос (или источник данных),
    2) Исправить условное оформление.
    Ответ написан
    Комментировать
  • Отчет СКД. Как при наличии одного документа объединить тч?

    @Dementor
    программист, архитектор, аналитик
    Понятно, что имея навыки программирования и имея легко модифицируемую систему, хочется получать быстрые результаты. Но:
    1. Сперва нужно научится формулировать свои мысли. Это поможет вам самим сконцентрироваться на важном и яснее увидеть проблематику. Да и чужим людям будет понятнее чем: " если задание(Документ) 1 то ... Если задание(Документ) другой, то в следующую ТЧ и так далее." - Даже при наличии желания помочь тут просто можно не понять что за Документ №1 и Другой Документ, и просто закрыть страницу
    2. Указанное поведение реализуется на закладке "Настройки" в структуре отчета. Если нет времени читать книгу Лены Хрусталевой по СКД или посмотреть статьи на Инфостарте, то хотя бы воспользуйтесь встроенным конструктором, который сделает большую часть работы за вас

    Подсказка: Группировки - это элементы структуры, где явно указаны группировочные поля (не путать с полями состава). Если в группировочных полях есть одна пустая запись - это детальная запись.

    У вас на скриншоте в комментариях три детальных записи. вторую нужно переделать в группу и подчинить ей третью запись.
    Ответ написан
    Комментировать