14 янв. 2018 г.

Прочитать EXCEL 1С

Что бы прочитать ексел файл не обязательно устанавливать MS EXCEL, в одной из платформ 1С в объекта ТабличныйДокумент в метода Прочитать() добавилась возможность чтения файла формата .xls.

Процедура ЧтениеФайла()
Реквизит1.Прочитать("C:\File.xls",СпособЧтенияЗначенийТабличногоДокумента.Текст);
//а далее перебираем строки табличного документа
КонецПроцедуры


Обмен РИБ через интерфейс кассира

Нужно организовать кнопку в интерфейсе кассира, которая даст возможность кассиру, с Ролью Кассир делать обмен с центральной базой через механизм Обмен РИБ.


ОбщийМодули.ПараметрыОбменаДанными.Процедура ОткрытьФормуВыполненияОбменаРИБ() Экспорт
        Если РольДоступна("ИнтерфейсКассира") Тогда
            УстановитьПривилегированныйРежим(Истина);
        КонецЕсли
    КонецПроцедуры
     
    ОбщиеМодули.ПроцедурыОбменаДанными.Процедура ВыполнитьОбменДаннымиПоПроизвольнойНастройке(НастройкаОбменаДанными, РучнойЗапускОбменов = Истина,
    ОбработкаАвтообменаНаКлиенте = Неопределено, Знач СоответствиеТекстовЭлектронныхПисем = Неопределено, Знач ОбменПриВходеВПрограмму = Ложь) Экспорт
        Если РольДоступна("ИнтерфейсКассира") Тогда
            УстановитьПривилегированныйРежим(Истина);
        КонецЕсли;
    КонецПроцедуры
     
    ОбщиеФормы.ФормаВыполненияОбменаДанными.ОпределитьНаличиеНастройки()
        Если РольДоступна("ИнтерфейсКассира") Тогда
            УстановитьПривилегированныйРежим(Истина);
        КонецЕсли;         
    КонецПроцедуры 
     
    ОбщиеФормы.ФормаВыполненияОбменаДанными.УстановитьПараметрыОбменаПоНастройке()
        Если РольДоступна("ИнтерфейсКассира") Тогда
            УстановитьПривилегированныйРежим(Истина);
        КонецЕсли;
    КонецПроцедуры
     
    ФормаОбработки
    Процедура ОбменНажатие(Элемент)
        ПараметрыОбменаДанными.ОткрытьФормуВыполненияОбменаРИБ();  
    КонецПроцедуры



Получить строку с уникальным идентификатором из COM

Выборка = COM.Выбрать();
Пока Выборка.Следующий() Цикл
          COM.XMLСтрока(Выборка.Контрагент);
КонецЦикла;

Найти дубли запросом

Есть в РегистреСведений измерение КодИКС, нужно найти дубли значений в поля  

ВЫБРАТЬ
Штрихкоды.Штрихкод КАК Штрихкод,
Штрихкоды.Владелец КАК Владелец,
Штрихкоды.КодИКС КАК КодИКС
ИЗ
РегистрСведений.Штрихкоды КАК Штрихкоды
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.Штрихкоды КАК Штрихкоды1
ПО (Штрихкоды.Владелец <> Штрихкоды1.Владелец
И Штрихкоды.КодИКС = Штрихкоды1.КодИКС)
 
УПОРЯДОЧИТЬ ПО
КодИКС


Сохранить значения формы

&НаСервере
Процедура СохранитьЗначенияФормы()
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("ДатаВыгрузки", Объект.ДатаВыгрузки);
ПараметрыФормы.Вставить("rrc", Объект.rrc);

ХранилищеОбщихНастроек.Сохранить("ВыгрузкаВРозетку","ПараметрыФормы",ПараметрыФормы, , Пользователи.ТекущийПользователь());
КонецПроцедуры

&НаСервере
Процедура ВосстановитьЗначенияФормы()
ПараметрыФормы = ХранилищеОбщихНастроек.Загрузить("ВыгрузкаВРозетку","ПараметрыФормы");

Если ПараметрыФормы = Неопределено Тогда 
            Возврат; 
КонецЕсли; 
Если ПараметрыФормы.Свойство("ДатаВыгрузки ") Тогда
Объект.Товары.Загрузить(ПараметрыФормы.Товары);
КонецЕсли;  
Если ПараметрыФормы.Свойство("rrc") Тогда
Объект.rrc = ПараметрыФормы.rrc;
КонецЕсли;
КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура ПриЗакрытии()
СохранитьЗначенияФормы();
КонецПроцедуры

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
            ВосстановитьЗначенияФормы();
КонецПроцедуры


 

CopyPaste Copyright © 2017 - |- Шаблон создан O Pregador - |- Отредактирован myr4ik07