Работа с FTP в 1С 8.2 и 8.3
Общая информация Для работы с протоколом FTP у технологической платформы 1С имеется два главных объекта — FTPСоединение и FTPФайл, кроме них существует объект ЗащищенноеСоединениеOpenSSL — который используется для подключения к FTPS-серверам (не следует путать с SFTP), а также объект ИнтернетПрокси — который используется для соединения с FTP-сервером через прокси-сервер. FTPСоединение ключевой объект для работы с FTP в 1С — именно через этот объект происходит
Преобразование GTIN и серийного номера маркировки для отправки на фискальный регистратор
При реализации маркированных товаров через контрольно-кассовую технику (далее ККТ) включать код идентификации товара в состав фискального документа «кассовый чек», согласно формату фискальных документов, определенному ФНС России, для этого необходимо: • Сканировать двумерный штриховой код DataMatrix, нанесенный на упаковку, товарный ярлык или непосредственно на маркированный товар с помощью 2D сканера, считывающего DataMatrix (при этом важно обратить
1с8 Распределение суммы по базе
В данном алгоритме ошибка прибавляется к сумме, у которой максимальный коэффициент. При достаточном большом количестве сторк можкт накопиться погрешность, которая прибавится к этой строке. Функция РаспределитьПропорционально(Знач ИсхСумма, МассивКоэф, Знач Точность = 2) Экспорт Если МассивКоэф.Количество() = 0 Или ИсхСумма = 0 Или ИсхСумма = Null Тогда Возврат Неопределено; КонецЕсли; ИндексМакс = 0; МаксЗнач = 0;
1c8 Как загрузить массив в список значений?
//создаем и наполняем массив Массив = Новый Массив; ... //создаем список значений СписокЗнач = Новый СписокЗначений; //загружаем элементы массива в список значений СписокЗнач.ЗагрузитьЗначения(Массив);
1с8 Открыть форму
Просто открыть форму обработки можно так: &НаКлиенте Процедура ОткрытьОбработку(Команда) ОткрытьФорму("Обработка.ОбработкаВводБланкЗаказа.Форма"); КонецПроцедуры А вот открыть форму обработки с передачей параметров: ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("ДокСсылка", НужнаяСсылка); ОткрытьФорму("Обработка.ПечатьНаправления.Форма", ПараметрыФормы); А в форме обработки, которую открыли, эта ссылка будет доступна через коллекцию «Параметры«. Т.е. так: Параметры.ДокСсылка В обработчике ПриСозданииНаСервере() можно проверить наличие переданных параметров с помощью Если Параметры.Свойство("ЛюбойПараметр") Тогда //
1с8 Подключение внешней обработки
Ну и не забываем во внешней обработке процедуру НашаПроцедураИзВнешнейОбработки() делать экспортной. Процедура НашаПроцедураИзВнешнейОбработки() Экспорт // Код процедуры КонецПроцедуры &НаСервере Процедура ПодключениеВнешнейОбработки() Попытка ВнешняяОбработка = ВнешниеОбработки.Создать(ПутьКОбработке, Ложь); ВнешняяОбработка.НашаПроцедураИзВнешнейОбработки(); Исключение //ОписаниеОшибки() КонецПопытки; КонецПроцедуры
1с8 Найти неуникальные значения в регистре сведений
ВЫБРАТЬ Штрихкоды.Штрихкод КАК Штрихкод, СУММА(1) КАК Кол, Штрихкоды.Владелец КАК Владелец ПОМЕСТИТЬ ВТ ИЗ РегистрСведений.Штрихкоды КАК Штрихкоды СГРУППИРОВАТЬ ПО Штрихкоды.Штрихкод, Штрихкоды.Владелец ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ.Штрихкод КАК Штрихкод, ВТ.Кол КАК Кол, ВТ.Владелец КАК Владелец ИЗ ВТ КАК ВТ ГДЕ ВТ.Кол > 1
1с. Перевод, преобразование Даты в Строку и Обратно
Перевод, преобразование Даты в Строку и Обратно // Перевод Даты в Строку и Обратно //ТекущаяДата() - 28.02.2010 23:58:59 //Переведем текущую дату в строку СтрокаДата = Формат(ТекущаяДата(), "ДФ=ггггММддЧЧммсс"); // Получаем: 20100228235859 //Переведем строку в дату ТекДата = Дата(СтрокаДата); // Получаем: 28.02.2010 23:58:59
Разложить строку с разделителем в массив 1с
Функция позволяет разложить строку с разделителем в массив 1с Функция СтрокаВМассивСтрок(Знач Стр, Разделитель) Результат = Новый Массив; Строки = СтрЗаменить(Стр, Разделитель, Символы.ПС); Для Индекс = 1 По СтрЧислоСтрок(Строки) Цикл Результат.Добавить(СтрПолучитьСтроку(Строки, Индекс)); КонецЦикла; Возврат Результат; КонецФункции
Создание элемента справочника с заданным GUID
РезСсылка = Справочники.ммр_Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД)); Объект = РезСсылка.ПолучитьОбъект(); НоменклатураНов = Справочники.ммр_Номенклатура.СоздатьЭлемент(); Если Объект = Неопределено Тогда НоменклатураНов.УстановитьСсылкуНового(РезСсылка); КонецЕсли; НоменклатураНов.Наименование = Номенклатура; НоменклатураНов.Записать();