Саныч Сан

499
Рейтинг

herfis
Сан Саныч



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

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

Подписчики 28

Группы

Профессиональный разработчик

IE 2017 Online

IE 2019 Online

Рейтинг 499

Расширенный автоподбор при вводе по строке в поле ввода в управляемых формах

Статья Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Бесплатно (free) Нет файла Механизмы платформы 1С

Началось все с того, что штатный автоподбор при вводе по строке в поле ввода для некоторых больших справочников устраивать перестал. Вообще, для способа поиска строки "Любая часть" он работает на первый взгляд очень хорошо: работает как полнотекстовый (т.е. по нескольким словам) даже без активации полнотекстового поиска, красиво подсвечивает слова поиска в результатах. Казалось бы, все отлично. Но есть неприятное ограничение - всего лишь 10 значений в результирующем списке (у вас может быть несколько больше, так как платформа неявно добавляет результаты поиска по истории ввода). Для небольших справочников или справочников с разнородным ассортиментом все хорошо. Но не в моей ситуации. А простых путей увеличить количество выдаваемых строк на момент написания статьи мне обнаружить не удалось. Пришлось полностью переопределять автоподбор. Ниже речь пойдет именно об этом. И, к слову, в типовых конфигурациях для некоторых справочников используются похожие приемы для увеличения количества строк результата автоподбора.

21.01.2021    17121    herfis    12       

66

Делаем из СКД Excel (ну, почти)

Инструменты и обработки Программист Платформа 1С v8.3 Абонемент ($m) Конфигурация (md, cf) Работа с интерфейсом

Несложный в использовании способ внедрить в обычный отчет СКД возможность редактировать значения ресурсов отчета (а-ля Excel) и получать отредактированные значения для дальнейшей обработки.

1 стартмани

26.01.2020    27363    40    herfis    16       

79

Основные концепции Конвертации данных (КД) для новичков

Статья Программист Платформа 1С v8.3 1С:Конвертация данных Бесплатно (free) Нет файла Перенос данных 1C

В КД очень важно понять основные принципы работы. Вроде и самой КД сто лет в обед, и понаписано уже не счесть, но все как-то не так, как мне бы хотелось. Постепенно крепло желание написать эдакое послание самому себе, начинающему изучать КД, да никак руки не доходили. Последней каплей стала очередная попавшаяся на глаза "неправильная" статья, и я решил - ничего страшного, пусть будет еще одна статья, зато гештальт закрою :) Даже если я излишне самонадеян, авось кому-то она все же поможет. Скриншотов не будет, будет только унылый текст. Но я бы в свое время за него многое отдал. Чтобы не перегружать статью, в ней не освещаются особенности вроде правил регистрации, особенностей КД 3.0 и т.п.

17.10.2017    34123    herfis    28       

149

Фоновое формирование отчета СКД на УФ средствами БСП

Статья Программист Управляемые формы Система компоновки данных Бесплатно (free) Нет файла СКД

В узких кругах широко известна проблема, когда штатное фоновое формирование отчета СКД на управляемых формах перестает работать при выполнении нештатной компоновки (переопределении события ПриКомпоновкеРезультата). В этом случае клиент ожидает ответа сервера и сеанс 1С "висит", что жутко неудобно при формировании затратных по времени отчетов. Также нет возможности прервать такое выполнение. Когда мириться с этим стало тяжело, стал искать решения, но почему-то подходящего готового рецепта не нашел. Если плохо искал, значит, будет еще один в копилку.

16.05.2017    33257    herfis    10       

107

Работа с промышленными сканерами штрихкодов Symbol из 1С по протоколу SNAPI через Zebra Scanner SDK

Инструменты и обработки Программист Платформа 1С v8.3 Конфигурации 1cv8 Windows Абонемент ($m) Внешняя обработка (ert,epf) Сканер штрих-кода

Промышленные сканеры Symbol - штука недешевая. Зато имеют надежное исполнение, абсолютно всеядные и универсальные, беспроводные, а самое интересное - имеют расширенные возможности управления через собственный протокол SNAPI (ну, есть и попроще у них сканеры, но я про самые вкусные - беспроводные и со SNAPI). Эти возможности позволяют реализовать эффективные сценарии работы. Одна проблема - нигде не смог найти примеры для работы из 1С по этому протоколу. Все стандартные протоколы поддерживаются, но ведь смак именно в расширенных возможностях! Поэтому пришлось копаться самому...

10 стартмани

26.10.2016    17840    7    herfis    30       

12

Прием программирования для компактного оформления последовательных немодальных диалогов (ПоказатьВопрос, ПоказатьВводЗначения и прочее)

Статья Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free) Нет файла Механизмы платформы 1С

С отказом от модальности в конфигурациях 1С:Предприятие 8.3 усложнилось взаимодействие с пользователем, которое ранее выполнялось с помощью модальных диалогов. Анализ реакции пользователя теперь выносится в отдельный обработчик. Всё, вроде бы, логично. Но если, скажем, пользователю нужно последовательно задать более одного вопроса, то линейный по своей сути код разбивается на цепочку обработчиков, разбросанных по программному модулю. Что, согласитесь, очень неудобно. Предлагаемый прием позволяет логически сгруппировать такой код. Итак...

24.07.2015    18184    herfis    14       

31

Прогресс-бар длительных серверных операций (БСП)

Инструменты и обработки Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m) Внешняя обработка (ert,epf) Инструментарий разработчика

Простой и удобный шаблон для подобного рода задач в виде внешней обработки. Используется технология, предлагаемая в БСП (Библиотеке Стандартных Подсистем), практически без ноу-хау. Доработано таким образом, что обработка может быть как встроенной в конфигурацию, так и внешней.

1 стартмани

23.04.2014    37809    301    herfis    19       

55

Комментарии

ОбменОсновные концепции Конвертации данных (КД) для новичков#28 18.02.22 13:58
(27)
Цитата
Нужно разработать отдельно правила Конф1 -> Конф2 и отдельно Конф2 -> Конф1?
Да.
(27)
Цитата
Они напрямую не взаимосвязаны и могут быть разработаны независимо?
Да.
HighLoadЧтение больших файлов ЖР (*.lgp)#9 11.02.22 13:58
(1) 24гб занимает часовой лог, я правильно понял?
Ну, можно или глазками бросить взгляд (подойдет любой редактор, умеющий работать с большими файлами, легко гуглится) или можно даже на той же 1С написать экспорт в SQL и там уже легко проанализировать статистику.
Подозреваю, что стали часто перепроводиться какие-то документы с огромным количеством движений. Ну или просто перепроведения периодов. Упс, не обратил внимание что ответ уже получен.
DevРиторика. Кто должен расплачиваться за неадекватное ТЗ?#39 10.02.22 18:51
Выскажу непопулярное среди разработчиков мнение.
На внутренних заказах в рамках немасштабных проектов самый эффективный вариант - это как у доктора с больным.
Доктор (разработчик) собирает анамнез (не волшебное ТЗ требует, на которое у 99% пользователей не хватит квалификации, а именно собирает информацию о проблемах, которые мучают пользователя), сам ставит диагноз, сам назначает курс лечения (составляет ТЗ, если надо) и с пользователем согласовывает лишь предполагаемый конечный результат лечения и его этапы (если надо). Мол смотри - будут вот такие окошки, тыкать будешь сюда, а смотреть - туда. А если предусмотрим вот это и вот это, то получится сделать вот так и так. Что решаем? Естественно, для этого нужно суметь поставить себя на место пользователя и решать проблему, а не "закрывать ТЗ".
Отталкиваться от того, что сам пользователь видит конечным результатом очень часто непродуктивно. Не говоря уже о представлениях пользователя о способах его достижения. Пользователь не знает типовых практик, не представляет возможности платформы, может отталкиваться от неправильных представлений. Будет как в том анекдоте - "а шо, так можно было??"
Естественно, это требует высокой квалификации разработчика в т.ч. как бизнес-аналитика и наличия высоких софт-скиллов. Но именно это и ценится. Бизнесу нужно умение решать проблемы, а не умение кодить и искать виноватых в кривых ТЗ.
Если коротко, то я бы выразил суть вышесказанного следующей фразой: при отсутствии бизнес-аналитика как отдельной прослойки, опытный разраб на его роль подходит на порядок лучше, чем средний пользователь.
MobileDevКак получить статистику крашей МП в Android?#1 17.01.22 12:04
Есть такая возможность без публикации приложения в Google Play?
Локально на телефоне нигде не записывается? Чтобы можно было взять телефон в руки и посмотреть сколько приложение "падало" за какой-то период?
ОбменОтладка ws/https без публикации#4 17.01.22 10:22
Ну так речь о том, чтобы вообще не тестировать транспорт. Без публикации это и не выйдет само собой. А вот всю логику, которая на него завязана не проблема протестировать и без него.
Что у вас происходит на стороне сервиса в общем случае? Срабатывает обработчик из которого доступны параметры запроса. Вы получаете тело запроса и его параметры, затем вызываете какие-то функции/процедуры куда передаете полученные данные. Ну так в чем проблема отладить эти процедуры функции, передав им данные которые якобы были получены из запроса (а на самом деле - нет)?
ОбменОтладка ws/https без публикации#2 16.01.22 19:17
А в чем проблема? Это же просто транспорт. "Скелеты" сервисов фактически идентичны, при наличии отлаженной "рыбы" отлаживать в ней уже нечего. А для отладки разбора и формирования пакетов публикация не нужна. Это же обычные процедуры/функции с понятными входами и выходами.
ЗЫ. Странно, что это отдельно в вакансии прописано ибо достаточно банальная вещь. Модульные тесты только так и пишутся - если в модуле есть работа с "внешним" окружением, то в модульных тестах его реакции просто эмулируются "мокаются" в степени достаточной для тестирования основной функциональности модуля.
DevКак получить текущую строку дерева управляемой формы на сервере?#37 28.12.21 13:27
(36) Я где-то утверждал, что вы писали про главбуха?
Я тоже смотрел фильм "Тупой, еще тупее". Проехали.
DevКак получить текущую строку дерева управляемой формы на сервере?#29 28.12.21 12:58
(28) А фамилия главбуха не нужна? Какое это имеет отношение к сабжу?
DevКак получить текущую строку дерева управляемой формы на сервере?#25 28.12.21 12:39
(1) Все прекрасно работает. Может у вас конфликт пространств имен или еще какая-нить чехарда. Попробуйте поменять имена переменных для начала и на простейшей тестовой обработке попробуйте воспроизвести проблему.