Форум OlegON > Программы и оборудование для автоматизации торговли > Системы автоматизации торговли > Set Retail / Centrum / Oil

Помогите разобраться с дробным количеством : Set Retail / Centrum / Oil

02.05.2024 1:28


28.12.2012 14:59
Расул
 
Доброго времени суток.
На кассе при вводе дробного количества выдает сообщение "количетво не кратно мерности". Как продать товар сдробным количеством?
28.12.2012 15:00
vitamin
 
в свойствах товара где мерность указать 0,001
28.12.2012 15:17
Расул
 
работает.спасибо.
Есть еще один нюанс.В Set Retail товары выгружаются из 1С-Рарус:Торговый комплекс. Товары которым нужно указать мерность в Set Retail очень много.Если бы я знал какой реквизит в 1С.ТК соответствует мерности в Set Retail, то написал бы обработку в 1с для заполнения "мерности".

Добавлено через 6 минут 51 секунду
Есть ли какая настройка правил обмена или сопоставления объектов? В общем как из 1с.ТК выгрузить значение мерности в Set Retail
28.12.2012 15:54
TANGOR
 
В SET -
мнемоника (или Атрибут) GoodsPrecision - мерность товара (1 или 0,001)
мнемоника (или Атрибут) GoodsType - Признак весового товара (0 – штучный, 1 – весовой)
29.12.2012 10:29
Расул
 
как и где их настраивать?
я только начал работать с set-ом.
29.12.2012 12:21
vitamin
 
Вам ничего настраивать не надо, это головняк раруса. Они должны были это исправить давным давно. Либо это у вас старая конфигурация.
SQL код:
// ТОВАРЫ
    
    
Если КоличествоТоваров>0 Тогда
        
// создаем структуру товаров
        
Если ФорматОбмена=1 Тогда // DBF
            
ДБФТовары Новый XBase;
            
ДБФТовары.Поля.Добавить("MODE","S",1);
            
ДБФТовары.Поля.Добавить("ITEM","S",20);
            
ДБФТовары.Поля.Добавить("NAME","S",200);
            
ДБФТовары.Поля.Добавить("UNIT","S",3);
            
ДБФТовары.Поля.Добавить("TYPE","S",10);
            
ДБФТовары.Поля.Добавить("GROUP1","N",4);
            
ДБФТовары.Поля.Добавить("GROUP2","N",4);
            
ДБФТовары.Поля.Добавить("GROUP3","N",4);
            
ДБФТовары.Поля.Добавить("GROUP4","N",4);
            
ДБФТовары.Поля.Добавить("GROUP5","N",4);
            
ДБФТовары.Поля.Добавить("PRICE","N",11,2);
            
ДБФТовары.Поля.Добавить("NDS","N",11,2);
            
ДБФТовары.Поля.Добавить("LIFE","N",4);
            
ДБФТовары.Поля.Добавить("PRECISION","N",8,4);
            
ДБФТовары.СоздатьФайл(КаталогВременныхФайлов()+"GOODS"+КодГруппыОборудования+".DBF"); ДБФТовары.ЗакрытьФайл();
            
ДБФТовары.ОткрытьФайл(КаталогВременныхФайлов()+"GOODS"+КодГруппыОборудования+".DBF",,0);
            
ДБФТовары.Кодировка КодировкаXBase.ANSI;
            
ДБФТовары.АвтоСохранение Истина;
            
        
Иначе // COM
            
ОбъектЗагрузки.DataFormat="GoodsItem;GoodsName;GoodsUnit;GoodsType;GoodsGroup1;GoodsGroup2;GoodsGroup3;GoodsGroup4;GoodsGroup5;GoodsPrice;GoodsNds;GoodsDepart;GoodsCurrency;GoodsLinkDepart;EffectiveLife;GoodsPrecision";
            
            
СтрокаДанныхНоменклатура "";
            
        
КонецЕсли;
        
// индикация
        
ФормаИндикатор.СтрокаСостояния="Загрузка товаров в кассовый сервер...";
        
ФормаИндикатор.ЭлементыФормы.Индикатор.МаксимальноеЗначение=КоличествоТоваровФормаИндикатор.Индикатор=0;
        
// выгрузка
        
Для Индекс=0 По КоличествоТоваров-1 Цикл
            ITEM        
СтрЗаменить(?(ИспользоватьАртикул,SafeArrayТаблицаТоваров.GetValue(Индекс,1),SafeArrayТаблицаТоваров.GetValue(Индекс,0)),"|","");
            
NAME        СокрЛП(СтрЗаменить(SafeArrayТаблицаТоваров.GetValue(Индекс,2),"|",""));
            
TYPE        Формат(SafeArrayТаблицаТоваров.GetValue(Индекс,9),"ЧГ=0");
            
UNIT        Лев(СокрЛП(СтрЗаменить(SafeArrayТаблицаТоваров.GetValue(Индекс,11),"|","")),3);
            
GROUP1        Формат(ВыделитьЧисло(SafeArrayТаблицаТоваров.GetValue(Индекс,4)),"ЧГ=0");
            
GROUP2        Формат(ВыделитьЧисло(SafeArrayТаблицаТоваров.GetValue(Индекс,5)),"ЧГ=0");
            
GROUP3        Формат(ВыделитьЧисло(SafeArrayТаблицаТоваров.GetValue(Индекс,6)),"ЧГ=0");
            
GROUP4        Формат(ВыделитьЧисло(SafeArrayТаблицаТоваров.GetValue(Индекс,7)),"ЧГ=0");
            
GROUP5        Формат(ВыделитьЧисло(SafeArrayТаблицаТоваров.GetValue(Индекс,8)),"ЧГ=0");
            
PRICE        Формат(Окр(SafeArrayТаблицаТоваров.GetValue(Индекс,10),2),"ЧРД=.; ЧГ=0");
            
NDS            Формат(Окр(SafeArrayТаблицаТоваров.GetValue(Индекс,12),2),"ЧРД=.; ЧГ=0");
            
DEPART        = ?(Число(НомерОтдела)=0,"1",Формат(Число(НомерОтдела),"ЧГ=0"));
            
CURRENCY    "RUB";
            
LIFE        Формат(SafeArrayТаблицаТоваров.GetValue(Индекс,14),"ЧН=0; ЧГ=0");
            
PRECISION    Формат(?(SafeArrayТаблицаТоваров.GetValue(Индекс,9)=1,0.001,1),"ЧРД=.; ЧГ=0");
            
            
Если ФорматОбмена=1 Тогда // DBF
                
ДБФТовары.Добавить();
                
ДБФТовары.MODE        "+";
                
ДБФТовары.ITEM        ITEM;
                
ДБФТовары.NAME        NAME;
                
ДБФТовары.TYPE        TYPE;
                
ДБФТовары.UNIT        UNIT;
                
ДБФТовары.GROUP1    GROUP1;
                
ДБФТовары.GROUP2    GROUP2;
                
ДБФТовары.GROUP3    GROUP3;
                
ДБФТовары.GROUP4    GROUP4;
                
ДБФТовары.GROUP5    GROUP5;
                
ДБФТовары.PRICE        PRICE;
                
ДБФТовары.NDS        NDS;
                
ДБФТовары.LIFE        LIFE;
                
ДБФТовары.PRECISION    PRECISION;
                
            
Иначе // COM
                
СтрокаДанныхНоменклатура=СтрокаДанныхНоменклатура+"|"+ITEM+"|"+NAME+"|"+UNIT+"|"+TYPE+"|"+GROUP1+"|"+GROUP2+"|"+GROUP3+"|"+GROUP4+"|"+GROUP5+"|"+PRICE+"|"+NDS+"|"+DEPART+"|"+CURRENCY+"|"+DEPART+"|"+LIFE+"|"+PRECISION;
            
КонецЕсли
29.12.2012 12:51
Расул
 
Разобрался. Для позиций которые нужно было продавать в дробном количестве, в 1с.ТК указал тип номенклатуры с признаком "весовой".
спасибо всем за помощь.
Часовой пояс GMT +3, время: 01:28.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.