Самостоятельная организация подборов в документах

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

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

подборы товаров из документа и скрины

6
В заметке приводится пример организации подборов в документах.

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

В МодулеФормы документа из которого осуществляется подбор разместил две процедуры:

&НаКлиенте
Процедура Подобрать(Команда)
		
	 //Проверка заполнение ревизитов ВидЦены и Склад
	Если НЕ ЗначениеЗаполнено(Объект.ВидЦены) Тогда
		Предупреждение("Заполните Вид цены!");	
	ИначеЕсли НЕ ЗначениеЗаполнено(Объект.Склад) Тогда
		Предупреждение("Заполните Склад!");
	Иначе
		//Создадим и заполним структуру передаваемых параметров
		ПараметрыОтбора = Новый Структура;
		ПараметрыОтбора.Вставить("ВидЦены", Объект.ВидЦены);
		ПараметрыОтбора.Вставить("Склад",Объект.Склад);
		
	Если РасчетыНаСервере.ЗначениеКонстанты() = Истина Тогда	
		//Откроем форму подбора справочника Номенклатура
		ФормаПодбора = ОткрытьФорму("Справочник.Номенклатура.Форма.ФормаПодбораСХарактеристиками", ПараметрыОтбора, Элементы.Товары);
	Иначе
		 ФормаПодбора = ОткрытьФорму("Справочник.Номенклатура.Форма.ФормаВыбораТовБезХарактеристик", ПараметрыОтбора, Элементы.Товары);
	КонецЕсли;
	
	КонецЕсли;
КонецПроцедуры


&НаКлиенте
Процедура ТоварыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
	
	Для Каждого СтрокаТЧ из ВыбранноеЗначение Цикл
		ТекСтрока = Объект.Товары.Добавить();
		ТекСтрока.Номенклатура = СтрокаТЧ.Номенклатура;
		
	Если РасчетыНаСервере.ЗначениеКонстанты() = Истина Тогда
		ТекСтрока.Характеристика = СтрокаТЧ.Характеристика;
	Иначе
		 ТекСтрока.Характеристика = "";
	КонецЕсли;
	
		ТекСтрока.Количество =  СтрокаТЧ.Количество;
		ДанныеСтруктура = Новый Структура("СтавкаНДС, ВидНоменклатуры, ЕденицаИзмерения",,,,);
		Структура =  РасчетыНаСервере.ПолучитьДанныеНоменклатуры(ДанныеСтруктура, ТекСтрока.Номенклатура);
		ТекСтрока.СтавкаНДС = Структура.СтавкаНДС;
		ТекСтрока.ВидНоменклатуры = Структура.ВидНоменклатуры;
		ТекСтрока.ЕденицаИзмерения = Структура.ЕденицаИзмерения;
		
		РасчетыНаКлиенте.ОбработкаЦены(ТекСтрока, ТекСтрока.Характеристика, Объект);
		
		РасчетыНаКлиенте.ПересчитатьСтроку(ТекСтрока, Объект);
	КонецЦикла;
	
КонецПроцедуры

Создал ФормуПодбора, в ней разместил реквизиты формы ИерархияНоменклатуры(ДинамическийСписок:  Основная таблица - СправочникНоменклатура), Список(ТаблицаЗначений ) и ОтобранныеТовары(ТаблицаЗначений)  в модуле формы разместил несколько процедур

&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)//Выбор номенклатуры кликом
	ТекСтрока = Элементы.Список.ТекущиеДанные;
	
	Структура = Новый Структура("Номенклатура, Характеристика, Цена", ТекСтрока.Номенклатура,ТекСтрока.Характеристика, ТекСтрока.Цена);
	  		
	СтандартнаяОбработка = ЛОЖЬ;
	//Поиск идентичной номенклатуры в ТаблицеЗначений	
	Строка = ОтобранныеТовары.НайтиСтроки(Новый Структура("Номенклатура, Характеристика, Цена", Структура.Номенклатура, Структура.Характеристика, Структура.Цена));	
	//Если Номенклатура уже записана то просто добавляем 1 к Количеству
	Если Строка.Количество() > 0 Тогда
	     Строка[0].Количество = Строка[0].Количество+1;
		 Строка[0].Сумма = Строка[0].Количество * Строка[0].Цена;
    Иначе//Создаем новый элемент
		 НовСтр = ОтобранныеТовары.Добавить();	
		 НовСтр.Номенклатура = ТекСтрока.Номенклатура;
		 НовСтр.Характеристика = ТекСтрока.Характеристика;
		 НовСтр.Количество = 1;
		 НовСтр.Цена = ТекСтрока.Цена;
		 НовСтр.Сумма = ТекСтрока.Цена;
	КонецЕсли; 
КонецПроцедуры


&НаКлиенте
Процедура СписокНачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, Выполнение)//Выбор номенклатуры перетаскиванием	
	ТекСтрока = Элементы.Список.ТекущиеДанные;
	
	Структура = Новый Структура("Номенклатура, Характеристика, Цена", ТекСтрока.Номенклатура,ТекСтрока.Характеристика, ТекСтрока.Цена);
	  		
	СтандартнаяОбработка = ЛОЖЬ;
	//Поиск идентичной номенклатуры в ТаблицеЗначений	
	Строка = ОтобранныеТовары.НайтиСтроки(Новый Структура("Номенклатура, Характеристика", Структура.Номенклатура, Структура.Характеристика));	
	//Если Номенклатура уже записана то просто добавляем 1 к Количеству
	Если Строка.Количество() > 0 Тогда
	     Строка[0].Количество = Строка[0].Количество+1;
		 Строка[0].Сумма = Строка[0].Количество * Строка[0].Цена;
    Иначе//Создаем новый элемент
		 НовСтр = ОтобранныеТовары.Добавить();	
		 НовСтр.Номенклатура = ТекСтрока.Номенклатура;
		 НовСтр.Характеристика = ТекСтрока.Характеристика;
		 НовСтр.Количество = 1;
		 НовСтр.Цена = ТекСтрока.Цена;
		 НовСтр.Сумма = ТекСтрока.Цена;
	КонецЕсли; 
КонецПроцедуры


&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)//Параметры передаваемые из Документа для запроса
	 ВидЦены = Параметры.ВидЦены;
	 Склад =Параметры.Склад;
	 Дата = Параметры.Дата;
КонецПроцедуры

&НаКлиенте
Процедура ПеренестиВДокумент(Команда)
	ОповеститьОВыборе(ОтобранныеТовары);
КонецПроцедуры



&НаСервере
Функция ЗаполнитьСписокНаСервере(Родитель)
		
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ РАЗРЕШЕННЫЕ
		|	ЕСТЬNULL(ОстаткиНаСкладахОстатки.Характеристика, ЦеныНоменклатурыСрезПоследних.Характеристика) КАК Характеристика,
		|	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.ВидЦены, """") КАК ВидЦены,
		|	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
		|	ЕСТЬNULL(ОстаткиНаСкладахОстатки.Склад, """") КАК Склад,
		|	ЕСТЬNULL(ОстаткиНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток,
		|	ОстаткиНаСкладахОстатки.Номенклатура КАК Номенклатура
		|ПОМЕСТИТЬ ВТ
		|ИЗ
		|	РегистрНакопления.ОстаткиНаСкладах.Остатки(&Дата, Склад = &Склад) КАК ОстаткиНаСкладахОстатки
		|		ПОЛНОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ВидЦены) КАК ЦеныНоменклатурыСрезПоследних
		|		ПО ОстаткиНаСкладахОстатки.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
		|			И ОстаткиНаСкладахОстатки.Характеристика = ЦеныНоменклатурыСрезПоследних.Характеристика
		|;
		|
		|////////////////////////////////////////////////////////////////////////////////
		|ВЫБРАТЬ
		|	СпрНоменклатура.Ссылка КАК Номенклатура,
		|	ВТ.Характеристика КАК Характеристика,
		|	ВТ.ВидЦены КАК ВидЦены,
		|	ВТ.Цена КАК Цена,
		|	ВТ.Склад КАК Склад,
		|	ВТ.КоличествоОстаток КАК КоличествоОстаток
		|ИЗ
		|	Справочник.Номенклатура КАК СпрНоменклатура
		|		ЛЕВОЕ СОЕДИНЕНИЕ ВТ КАК ВТ
		|		ПО СпрНоменклатура.Ссылка = ВТ.Номенклатура
		|ГДЕ
		|	СпрНоменклатура.Родитель = &Родитель
		|	И СпрНоменклатура.ВидНоменклатуры = ЗНАЧЕНИЕ(Справочник.ВидыНоменклатуры.Товар)";
	
	Запрос.УстановитьПараметр("ВидЦены", ВидЦены);
	Запрос.УстановитьПараметр("Дата", Дата);
	Запрос.УстановитьПараметр("Склад", Склад);
	Запрос.УстановитьПараметр("Родитель", Родитель);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВДЗ = РезультатЗапроса.Выбрать();
	
	Список.Очистить();
	Пока ВДЗ.Следующий() Цикл
		Строка = Список.Добавить();
		Строка.Номенклатура = ВДЗ.Номенклатура;
		Строка.Характеристика = ВДЗ.Характеристика;
		Строка.Склад = ВДЗ.Склад;
		Строка.Цена = ВДЗ.Цена;
		Строка.ВидЦены = ВДЗ.ВидЦены;
		Строка.КоличествоОстаток = ВДЗ.КоличествоОстаток;
	КонецЦикла;
		
КонецФункции


&НаКлиенте
Процедура ИерархияНоменклатурыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	Родитель = Элементы.ИерархияНоменклатуры.ТекущаяСтрока;
	ЗаполнитьСписокНаСервере(Родитель);
КонецПроцедуры


Вот собственно и все. 

 

Чуть чуть улучшил функционал обработки, сделав аналог полнотекстового поиска при большом количестве номенклатуры. Для этого добавил реквизит формы ОтборНаименование с типом Строка. Код разместил в модуле ФормыПодбора

&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
	ПеречитатьТабЧасть();
КонецПроцедуры

&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
	ПеречитатьТабЧасть();
КонецПроцедуры

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

&НаКлиенте
Процедура ОтборНаименованиеОчистка(Элемент, СтандартнаяОбработка)
	УстановитьОтбор("НаименованиеНоменклатуры","");
КонецПроцедуры


&НаКлиенте
Процедура ОтборНаименованиеИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
	УстановитьОтбор("НаименованиеНоменклатуры",Текст);
КонецПроцедуры

&НаКлиенте
Процедура УстановитьОтбор (ТекЭлементОтбора,ТекЗначениеОтбора)
	
	СтруктураПоиска = Новый Структура;
	
	Если ТекЗначениеОтбора <> "" Тогда
		СтруктураПоиска.Вставить(ТекЭлементОтбора,ТекЗначениеОтбора);
	КонецЕсли;
	
	Элементы.Список.ОтборСтрок = Новый ФиксированнаяСтруктура(СтруктураПоиска);
	
КонецПроцедуры

 

6

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

Комментарии
Избранное Подписка Сортировка: Древо
1. CheBurator 3403 14.11.18 04:12 Сейчас в теме
Категорически форма похожа на форму подбора из ТиС 77
3. srub 58 14.11.18 09:29 Сейчас в теме
(1)
Хотите верьте хотите нет, но я не видел ранее этой формы, и решал эту задачу самостоятельно применительно к своей самописной конфигурации. Данная архитектура была выбрана мной чтобы сохранить иерархию с Справочнике Номенклатура, так как использование характеристик сильно затруднило процесс. Я посмотрел как это устроено в Рознице и взял оттуда идею использовать ТаблицуЗначений Иерархия Номенклатуры, дальше все это чисто моя самодеятельность так как в типовой все очень сложно и много того что мне было просто не нужно. Так что это самостоятельное решение не содранное у кого, которое можно критиковать за какие то косяки, но оно меня устраивает применительно к решаемой задаче. Я выложил это здесь чтобы сэкономить кому то нужное время. И отнюдь не всегда внешнее сходство, подразумевает сходство реализации решения))) Вы сравните код, если у Вас есть код той обработки и тогда говорите о сходстве.
4. CheBurator 3403 14.11.18 23:25 Сейчас в теме
да я, вообще-то, и не ругаюсь...
5. srub 58 15.11.18 09:30 Сейчас в теме
(4)
Вас понял)) Есть какие то общие решения удобные для пользователя и такое расположение полей мне показалось очень удобным.))
6. srub 58 13.02.19 14:25 Сейчас в теме
Добавил в подбор поиск по строке
Оставьте свое сообщение

См. также

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

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

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

07.10.2019    11900    HostHost    23       

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

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

29700 руб.

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

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

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

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

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

05.09.2019    15812    ids79    44       

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

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

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

03.09.2019    10681    YPermitin    69       

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

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

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

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

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

17.08.2019    13042    ids79    16       

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

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

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

08.08.2019    18328    ids79    31       

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

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

9000 рублей

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

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

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

02.08.2019    12857    avalakh    21       

Перенос документов, остатков и справочников КА 1.1 => КА 2 / УТ 11. Обновлено до КА 2.4.10.х и УТ 11.4.10.х! Промо

Более 130 компаний выполнили переход на КА 2 или УТ 11 с помощью нашей разработки! Позволяет перенести не только остатки и справочники (как типовая обработка), но и документы за нужный период времени. Предоставляем техподдержку, оперативно исправляем замечания, выпускаем обновления при выходе новых релизов программ 1С. Вы можете проверить разработку до покупки: сделаем бесплатный тестовый перенос из вашей базы КА 1.1 и предоставим доступ к базе-результату через веб-клиент!

29700 руб.

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

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

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

26.07.2019    16469    ids79    8       

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

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

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

17.07.2019    13714    ids79    27       

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

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

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

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

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

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

09.07.2019    10912    YPermitin    12       

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

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

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

04.07.2019    9775    SeiOkami    49       

Онлайн-интенсив "Бизнес-процессы для подготовки к экзамену 1С:Специалист по платформе" 12 декабря 2019 г. Промо

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

777 рублей

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

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

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

25.06.2019    23963    ids79    17       

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

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

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

11.06.2019    13672    dmurk    134       

Очный семинар по регулярному менеджменту Александра Фридмана "Вы или Хаос", 12 декабря 2019 г. , Санкт-Петербург Промо

Семинар по регулярному менеджменту от Александра Фридмана для собственников, первых лиц и топов. Технология управленческого планирования, комплексного управления временем и другими ресурсами, выполнением поручений, делами, информацией, контактами (встречи-звонки-почта).

от 11000 до 29000 рублей

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

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

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

16.05.2019    21437    YPermitin    27       

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

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

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

11.05.2019    13356    Eret1k    23       

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

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

19700 руб.

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

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

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

25.04.2019    7686    m-rv    2       

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

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

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

16.04.2019    10185    m-rv    16       

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

Уже более 100 компаний приобрели перенос и выполнили переход на УТ 11 / КА 2 / ERP 2 с помощью нашей разработки! Обработка перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2 позволяет перенести не только остатки на указанную дату (как типовой перенос), но и все возможные документы за выбранный период. При выходе новых релизов этих программ оперативно выпускаем обновление обработки. Предоставляем техническую поддержку. Можем сделать бесплатный тестовый перенос!

29700 руб.

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

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

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

07.04.2019    18949    ellavs    125       

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

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

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

28.03.2019    15412    ellavs    83       

Перенос данных БП 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 руб.

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

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

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

14.03.2019    16302    YPermitin    53       

Перенос данных КА 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 руб.

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

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

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

03.02.2019    19352    ids79    9