Парочка интересных багов.

Публикация № 1147318

Разработка - Практика программирования

Переход 8.2 8.3 Баг Фича

9
Баги, обнаруженные на платформе 8.3 после перехода с 8.2.

Добрый день, друзья!

Недавно стал участником перехода с платформы 8.2 на 8.3. База старая и сто раз переписанная. К сожалению, непосредственное участие принять не удалось, зато мне выпала честь исправлять появившиеся баги после перехода. Пару самых интересных по моему мнению опишу в этой статье.

Пояснения: переход осуществлялся с версии платформы 8.2.19.130 на 8.3.13.1690. И конфигурация написана на обычных формах (на самом деле там всё смешано, но большая часть на обычных), то есть все случаи будут затрагивать работу в обычном приложении. Ладно, поехали.

Случай 1.

Предисловие.

Мы все хорошо знаем, что при автоподборе текста стандартный алгоритм такой: ищутся первые 50 записей, найденных по реквизитам, указанным в параметре "Ввод по строке" объекта вот здесь:

При обусловненной необходимости этот список можно дополнить, но, естественно, добавляемое поле должно быть проиндексировано. Если есть всего одна найденная запись, то оставшаяся часть строки ввода добавляется; нет нужды всё описывать в подробностях. Если найденных записей не больше пятидесяти, то выпадает список выбора значения, а, если больше, то ничего не происходит.

Теперь посмотрим, как происходит автоподбор текста на разных платформах:

 - 8.2. Всё как обычно.

  - 8.3. После автоподбора курсор переносится в конец подобранной строки.

Для тех, кто смотрит в монитор или пишет быстрее того момента, когда срабатывает обработчик, это, может быть, и не проблема. У остальных же это вызвало, мягко говоря, недовольство. Что поделать, придется переписывать стандартную обработку...

Для начала, нужно получить из метаданных все поля ввода по строке и в соответствии с этим формировать запрос. Прилагаю листинг ниже.

Процедура ПолеВвода1АвтоПодборТекста(Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)
	СтандартнаяОбработка = Ложь;
	ТекстЗапросаПоле = "";
	ТекстЗапросаУсловие = "";
	КоличествоПолейВводаПоСтроке = Метаданные.Справочники.НомераГТД.ВводПоСтроке.Количество();
	Для ТекСтрока = 1 По КоличествоПолейВводаПоСтроке Цикл
		
		ПолеВводПоСтроке = Метаданные.Справочники.НомераГТД.ВводПоСтроке.Получить(ТекСтрока - 1);
		
		ТекстЗапросаПоле = ТекстЗапросаПоле + "
		|		КОГДА НомераГТД." + ПолеВводПоСтроке.Имя + " ПОДОБНО &Текст
		|			ТОГДА НомераГТД." + ПолеВводПоСтроке.Имя;
		
		ТекстЗапросаУсловие = ?(ТекСтрока = 1, "(", "") + ТекстЗапросаУсловие + "
		| НомераГТД." + ПолеВводПоСтроке.Имя + " ПОДОБНО &Текст" + ?(ТекСтрока = КоличествоПолейВводаПоСтроке, ")", Символы.ПС + "ИЛИ ");
		
	КонецЦикла; 
	
	
	Запрос = Новый Запрос;
	Запрос.УстановитьПараметр("Текст", Текст + "%");
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ВЫБОР"
	+ ТекстЗапросаПоле + "
	|	КОНЕЦ КАК ТекстАвтоПодбора,
	|	НомераГТД.Представление,
	|	НомераГТД.Ссылка
	|ИЗ
	|	Справочник.НомераГТД КАК НомераГТД
	|ГДЕ " + ТекстЗапросаУсловие;
	РезультатЗапроса = Запрос.Выполнить();
	Если Не РезультатЗапроса.Пустой() Тогда
		Выборка = РезультатЗапроса.Выбрать();
		КоличествоЗаписей = Выборка.Количество();
		Если Выборка.Количество() = 1 Тогда
			Выборка.Следующий();
			ТекстАвтоПодбора = Выборка.ТекстАвтоПодбора;
		ИначеЕсли Выборка.Количество() <= 50 Тогда	
			СписокВыбора = Новый СписокЗначений;
			Пока Выборка.Следующий() Цикл
				СписокВыбора.Добавить(Выборка.Ссылка, 
									  ?(Выборка.ТекстАвтоПодбора = Выборка.Представление, СокрЛП(Выборка.ТекстАвтоПодбора), СокрЛП(Выборка.ТекстАвтоПодбора) + " (" + СокрЛП(Выборка.Представление) + ")"));	
			КонецЦикла;
			ВыбранноеЗначение = ВыбратьИзСписка(СписокВыбора, Элемент);					  
			Если ВыбранноеЗначение <> Неопределено Тогда
				Элемент.Значение = ВыбранноеЗначение.Значение;
			КонецЕсли; 					  
		КонецЕсли; 
	КонецЕсли; 	
КонецПроцедуры

Можно было бы не париться и просто обратиться с поиском по коду. С другой стороны, мы хотим повторить полный функционал платформы и нам нельзя игнорировать настройки, указанные в метаданных. После формирования запроса проверяем количество записей результата: если запись одна, то просто приравниваем результат к параметру ТекстАвтоПодбора. Интересно, что, если вручную установить этот параметр, то баг пропадет. Если записей не больше пятидесяти, то формируем список значений и формируем выбор из списка. Для оптимизации запроса можно, конечно, вписать "ВЫБРАТЬ ПЕРВЫЕ 51", но я подумал, что это может выжечь кому-нибудь глаза, поэтому не стал:)

Вроде готово, смотрим результат:

 - когда найденная запись только одна;

  - когда записей несколько;

Также, когда записей несколько, но они найдены не по полю основного представления, то представление элемента нужно также внести в скобки в списке выбора. Для теста специально добавил в поля ввода ещё один реквизит. Процесс добавления:

 -внес в индекс

  - добавил в поля ввода по строке.

Результат автоподбора текста:

Вот так в итоге получилось.

 

Случай 2.

Предисловие.

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

Итак, вот какой жук нашелся. Для наглядности создам обработку с двумя строчками кода при изменении поля ввода: первая строчка очищает значение элемента, вторая устанавливает свойство ТекущийЭлемент = Элемент. Смотрим:

 - 8.2 всё ок;

 - 8.3 вторая строчка кода не срабатывает...

Окей. Конечно, от этого никто не помрёт, но эмоций, поверьте, много, особенно у тех, кто пользуется сканером штрих-кода... Как это исправить? Что только ни пытался сделать. Пробовал в конце обработчика ставить строчку Элемент.ВыделенныйТекст = " ". В каком-то смысле это помогло, однако, в поле ввода красовался пробел, что совсем нам не нужно.

Нашелся выход из данной ситуации не сказать, что прямо идеальный, но другого выхода не нашлось. С выходом платформы 8.3 на форме появился новый обработчик ОбновлениеОтображения. Хотя в методичке по этому обработчику говорится, что так делать нельзя из-за возможности падения производительности системы, как я уже говорил, другого выхода не нашлось. Итак, пишу листинг:

Перем ЭтоИзменениеНужногоПоля;

Процедура ПолеВводаПостояннымКурсоромПриИзменении(Элемент)
	Элемент.Значение = "";
КонецПроцедуры

Процедура ОбновлениеОтображения()
	Если ЭтоИзменениеНужногоПоля Тогда
		ТекущийЭлемент = ЭлементыФормы.ПолеВводаПостояннымКурсором;
	КонецЕсли; 	
КонецПроцедуры

Процедура ПолеВводаПостояннымКурсоромОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка)
	Если ЗначениеЗаполнено(Элемент.Значение) Тогда
		ЭтоИзменениеНужногоПоля = Истина;
	КонецЕсли; 
КонецПроцедуры

ЭтоИзменениеНужногоПоля = Ложь;

Итак, создаю глобальную переменную формы ЭтоИзменениеНужногоПоля. Она нужна для того, чтобы возврат в нужный элемент формы происходил только после нужного мне события. При окончании ввода текста в нужном поле ввода при заполненном значении устанавливаю значение моей переменной в Истина. После всех обработчиков срабатывает обработчик ОбновлениеОтображения. Там я проверяю, что, если изменено нужное поле, то ставлю ТекущийЭлемент в нужный элемент формы. Вуаля. Результат:

 - норм.

Вроде бы косяки и мелкие, но пришлось достаточно попотеть, чтобы их устранить. После всего я подумал, что на 8.3 лучше работать на управляемых формах... Может, я здесь, конечно, и не прав. В любом случае хочу сказать, что в таких ситуациях, когда перестают работать привычные для тебя методы работы и приходится в быстром порядке придумывать новые, получаешь наибольший опыт. Такой выход из зоны комфорта помогает взглянуть на привычные вещи с другой стороны и ещё это весело. Но это не точно:)

9

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. VmvLer 30.10.19 13:21 Сейчас в теме
Использовать обычные формы на 8.3 в 2019 это как поехать на тверскую не на бмв, а на дилижансе с парой дохлых кляч.

разработчики платформы могли попросту "забить болт" на тонкости в обычных формах и я бы тоже так сделал.
muwa_; Касаткин; chg; SarethDark; Repich; +5 7 Ответить
9. Dream_kz 95 30.10.19 16:08 Сейчас в теме
(1)
Использовать обычные формы на 8.3 в 2019

Деловые линии на обычных формах, и ч0?
10. VmvLer 30.10.19 16:14 Сейчас в теме
(9) я не помню не знаю никаких деловых линий и прочего некрофильского 1С-софта и ч0?
IgorS; Vafla; +2 1 Ответить
16. stepan_s 31.10.19 06:13 Сейчас в теме
(1) :) я тут на днях в розничном магазине АРМ 1С77 встретил.... Согласно Вашей логике, они должны были давно в розницу на 8.3 убежать... Только зачем?
А вот перейти на 8.3 с обычными формами не претит, т.к.вендор сказал что наследуется и все хорошо.....
19. hasp_x 154 31.10.19 13:14 Сейчас в теме
2. YanTsys 12 30.10.19 13:24 Сейчас в теме
С багом из статьи пока не встречался, но зато очень мешает когда при копировании в строку поиска текста например из Excel кроме искомого текста в конце строки подставляется еще и знак переноса строки ¶ и 1с в итоге ничего не находит пока его не удалишь...
3. Senator_I 8 30.10.19 13:35 Сейчас в теме
Зачем старую перепиленную базу на 8.3 переводить?
4. YannikAlx 31 30.10.19 13:48 Сейчас в теме
(3) А чтоб повеселиться? Скучно ведь, когда все нормально работает....
5. fromlion 57 30.10.19 14:24 Сейчас в теме
(3) как вариант чтоб избежать зоопарка платформ, т.к. может стоять параллельно БП и ЗУП которые просят новую платформу.
astrallight; Kolunya; Alfars; alex-l19041; Master861C; +5 Ответить
6. Senator_I 8 30.10.19 14:51 Сейчас в теме
(5) да, вполне вероятно, когда есть базы, требующие платформы 8.3
20. SlavaKron 31.10.19 13:22 Сейчас в теме
(5) Для этого есть режим совместимости.
21. fromlion 57 31.10.19 14:19 Сейчас в теме
(20) Для чего есть режим совместимости?
22. SlavaKron 31.10.19 14:22 Сейчас в теме
(21)
чтоб избежать зоопарка платформ, т.к. может стоять параллельно БП и ЗУП которые просят новую платформу
23. fromlion 57 31.10.19 14:57 Сейчас в теме
(22)видимо я потерял мысль, т.к. я отвечал своим 5 постом на вопрос 3 поста.
7. RomanCrow13 88 30.10.19 15:26 Сейчас в теме
(3)
1) Внедрение БСП,
2) JSON
3) SSL
4) Все базы на одной платформе
5) Подсветка кода наконец!
JohnyDeath; +1 Ответить
8. Senator_I 8 30.10.19 15:28 Сейчас в теме
(7) а, ну это аргумент конечно. Чтобы построить новое надо сломать старое.
11. RocKeR_13 717 30.10.19 18:00 Сейчас в теме
чтобы сработал обработчик ПриИзменении приходится после сканирования вставлять символ переноса каретки, после это поле очищается и курсор переносится туда же

У вас сканер не прописан в подключаемом оборудовании что ли? И в целом непонятен пример: зачем очищать поле после сканирования?
15. RomanCrow13 88 31.10.19 02:03 Сейчас в теме
(11)
В УТ 10.2 нет библиотеки подключаемого оборудования.
Я сделал очистку для наглядности, срабатывает ли команда ТекущийЭлемент = Элемент. А в целом, в поле ввода юзер вбивает штрих-код, при изменении происходит обработка данных в соответствии с введённым штрих-кодом. После обработки поле ввода должно очищаться и текущим элементом должен снова стать элемент ввода кода, чтобы снова вбивать новые штрих-коды.
12. bulpi 158 30.10.19 19:47 Сейчас в теме
Замечание:
Вместо ОбновлениеОтображения() в типовых используют однократный запуск обработчика ожидания с таймаутом 0.1 сек
13. genayo 30.10.19 22:06 Сейчас в теме
(12) Зачем так делают в типовых?
18. bulpi 158 31.10.19 12:14 Сейчас в теме
(13)
Чтобы перевести курсор на нужное поле (например)
14. genayo 30.10.19 22:10 Сейчас в теме
А так да, не буду, пожалуй, на 8.2 с 8.3 специализированную конфу переводить...
17. user710334_koshil.v 31.10.19 09:14 Сейчас в теме
Спасибо! Один в один ситуация описанная в п. 2. Только это не баг 8.2 - 8.3. У меня это проявилось при переходе с 8.3.10 на 8.3.13.1690. Есть две самописки одна на обычных, одна полностью на УФ. Теперь именно из за неизвестных багов на ОФ я боюсь обновлять платформу на 14-15.
Оставьте свое сообщение

См. также

Полезные процедуры и функции для программиста 160

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

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

07.10.2019    12125    HostHost    23       

С 2020 года сервис «Продление поддержки конфигурации 1С:УПП» подорожает вдвое Промо

Успейте продлить поддержку УПП до повышения цен! Фирма «1С» предупредила об изменении цен на сервис «Продление поддержки конфигурации "1С:Управление производственным предприятием"». С 1 января 2020 года сервис подорожает в два раза.

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

Агрегатные функции СКД, о которых мало кто знает 356

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Пользуетесь ли Вы всеми возможными агрегатными функциями, которые предоставляет система компоновки данных? Если Вы используете только: СУММА, КОЛИЧЕСТВО, МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ, то эта статья для Вас.

05.09.2019    16026    ids79    44       

Три костыля. Сказ про фокусы в коде 124

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Разработка

Три интересных (или странных) костыля в коде, которые могут помочь в повседневных и не очень задачах.

03.09.2019    10780    YPermitin    69       

Онлайн-курс "Технология выполнения проектов ERP-класса – процессный подход". Третий поток. Курс проходит с 21 января по 18 марта 2020 года. Промо

Курс разработан Внедренческим центром «Раздолье». Курс предназначен для подготовки аналитиков, архитекторов и руководителей проектов автоматизации процессов управления с использованием комплексных ИТ-систем (1С:ERP, 1С:УХ, 1С:КА, 1С:УТ). В основе курса лежит методика применения процессного подхода.

9000 рублей

Отслеживание выполнения фонового задания 143

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

Запуск фонового задания из модуля внешней обработки. Отслеживание выполнения задания в виде прогресса, расположенного на форме.

17.08.2019    13280    ids79    16       

Функции СКД: ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив 262

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Подробное описание и использование внутренних функций системы компоновки данных: Вычислить, ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив, ВычислитьВыражениеСГруппировкойТаблицаЗначений.

08.08.2019    18648    ids79    31       

Перенос данных КА 1.1 / УПП 1.3 => БП 3.0 (перенос остатков, документов и справочников из "1С:Комплексная автоматизация 1.1" / УПП 1.3 в "1С:Бухгалтерия 3.0"). Обновлен до версий КА 1.1.115.х, УПП 1.3.127.х! Промо

Разработка позволяет перенести остатки по всем счетам бух.учета в программу "1С:Бухгалтерия предприятия 8", ред. 3.0 на выбранную дату начала ведения учета. Также переносятся документы за период и вся необходимая справочная информация. Правила оперативно обновляю при выходе новых релизов. Рассылка обновлений правил бесплатно в течение 12 месяцев. Есть видеодемонстрация проведения переноса данных. Конфигурации при использовании обмена остаются полностью типовыми. Перенос данных возможен в Бухгалтерию 3.0 версии ПРОФ, КОРП или базовую.

24700 руб.

Фоновое выполнение кода в 1С - это просто 124

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования Разработка

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

02.08.2019    12937    avalakh    21       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

СКД - наборы данных и связи между ними, создание собственной иерархии, вложенные отчеты 141

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Набор данных объект. Использование в схеме компоновки нескольких наборов данных. Различные варианты связи наборов: объединение, соединение. Использование иерархии в отчетах на СКД. Создание собственной иерархии, иерархия детальных записей. Использование вложенных схем в отчетах на СКД.

26.07.2019    16805    ids79    8       

СКД - использование расширений языка запросов, секция ХАРАКТЕРИСТИКИ 156

Статья Программист Нет файла v8 v8::СКД Бесплатно (free) Инструментарий разработчика Практика программирования

Автоматическое и не автоматическое заполнение полей компоновки данных. Использование расширений языка запросов для СКД «{…}», секция ВЫБРАТЬ, секция ГДЕ, параметры виртуальных таблиц. Автоматизированное использование дополнительных данных в запросе: секция ХАРАКТЕРИСТИКИ.

17.07.2019    13847    ids79    27       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Регистры сведений. За кулисами 129

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования Разработка

Небольшие заметки по внутреннему устройству регистров сведений.

09.07.2019    11108    YPermitin    12       

"Меньше копипаста!", или как Вася универсальную процедуру писал 183

Статья Программист Стажер Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования Разработка

Программист Вася разбирает подход создания универсальных методов на примере программного вывода СКД.

04.07.2019    9946    SeiOkami    49       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Создание отчетов с помощью СКД - основные понятия и элементы 217

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

Основные принципы работы СКД. Понятия схемы компоновки и макета компоновки. Описание основных элементов схемы компоновки: наборы данных, поля, вычисляемые поля, ресурсы, параметры.

25.06.2019    24136    ids79    17       

Многопоточное ускорение однопользовательских нагрузок в 1С + Microsoft SQL Server 2017 179

Статья Программист Нет файла v8 v8::Запросы Бесплатно (free) Практика программирования Разработка

Взаимодействие с Microsoft SQL Server нередко вызывает трудности у 1С-ников, а потому интересны любые моменты, связанные с его использованием. О своем опыте работы с новым SQL Server 2017 участникам конференции Infostart-2018 рассказал директор ООО «Аналитика софт» Дмитрий Дудин.

11.06.2019    13707    dmurk    134       

Перенос данных БП 2.0 => УТ 11 / КА 2 / ERP 2 (перенос остатков, документов и справочников из "1С:Бухгалтерия предприятия 8", ред. 2.0 в "1С:Управление торговлей 8", ред.11 / КА 2 / ERP 2). Обновлено до УТ 11.4.10.х, КА 2.4.10.х, ERP 2.4.10.х! Промо

Перенос позволяет загрузить в УТ 11 / КА 2 / ERP 2 документы за выбранный период, справочную информацию и остатки по счетам бух. учета. Переносятся остатки денежных средств, взаиморасчетов, остатки товаров и материалов на складах. Переносятся девятнадцать основных видов документов за выбранный период и вся нормативно-справочная информация. Есть фильтр по организации. Если нужно переносить что-то дополнительно, то обычно бесплатно дорабатываю правила (перед покупкой согласуйте необходимые доработки).

29700 руб.

Регистры накопления. Структура хранения в базе данных 178

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования Разработка

Структура хранения регистров накопления в базе данных для платформы 1С:Предприятие 8.x. Первая часть в серии публикаций.

16.05.2019    21669    YPermitin    27       

Выполнение внешней обработки в фоновом задании 149

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования Разработка

Подробное описание подхода к созданию длительной операции на основе внешней обработки. Реализация протестирована на 1С 8.3.12.1714 (x64).

11.05.2019    13570    Eret1k    23       

Перенос данных КА 1.1 => ERP 2 (ЕРП) (обработка переноса документов, остатков и справочной информации из "1С:Комплексная автоматизация, ред. 1.1" в "1С:ERP Управление предприятием, ред 2"). Обновлен до КА 1.1.115.х и ERP 2.4.10.х Промо

Обработка позволяет переносить из КА 1.1 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления в случае выхода новых релизов конфигураций 1С.

29700 руб.

Выгрузка документа по условию 5

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Разработка

Что делать, если документы нужно выгружать не все подряд, а по какому-то фильтру: статусу, дате, набору условий... А что если он соответствовал этим условиям, а потом перестал? А если потом опять начал? Такие ситуации заставили попотеть не одного программиста.

25.04.2019    7841    m-rv    2       

Как прикрутить ГУИД к регистру сведений 23

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8 Разработка

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

16.04.2019    10350    m-rv    16       

Перенос документов и справочников ERP 2 / КА 2 / УТ 11 => БП 3.0 Промо

Перенос позволяет настроить собственный обмен данными между указанными программами, альтернативный предлагаемому фирмой 1С. Предоставляем техподдержку по всем вопросам данного обмена. Можем подключиться к вам удаленно для разбора ситуаций. Оперативно обновляем при выходе новых релизов 1С. Бесплатные обновления в течение полугода.

19700 руб.

О расширениях замолвите слово... 195

Статья Программист Стажер Нет файла v8 Бесплатно (free) Практика программирования Разработка

О чём стоит задуматься при принятии решения о создании расширения конфигурации…

07.04.2019    19003    ellavs    125       

Git-репозитории для 1С-кода (опыт использования при небольших проектах) 202

Статья Программист Стажер Нет файла v8 Windows Бесплатно (free) Практика программирования Разработка

Инструкции по взаимодействию с Git-репозиторием, которые писались для тех наших программистов, которые вообще никогда не работали с Git (руководства в духе "Как получить код из git-репозитория?", "Как отправить код в git-репозиторий")...

28.03.2019    15567    ellavs    83       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Трюки с внешними источниками данных 167

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования Разработка

Некоторые трюки для преодоления ограничений внешних источников данных.

14.03.2019    16494    YPermitin    53       

1С:Предприятие через Интернет. 1С:Fresh Промо

Ведение бухгалтерского и налогового учет, сдача отчетности, управление бизнесом из любой точки мира. Привычные программы «1С» через Интернет без приобретения коробочных программ.

Возможности типовых шаблонов ограничения доступа на уровне записей (RLS) 174

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

Краткий обзор применения типовых шаблонов ограничения доступа на уровне записей в конфигурациях, созданных на базе БСП: #ПоЗначениям, #ПоНаборамЗначений, #ПоЗначениямРасширенный, #ПоЗначениямИНаборамРасширенный

03.02.2019    19485    ids79    9