EXPORTTOCAS — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) м (→Смотрите также) |
Hisava (обсуждение | вклад) м |
||
Строка 2: | Строка 2: | ||
Выгрузка изделий и товаров на весы CAS | Выгрузка изделий и товаров на весы CAS | ||
[[EXPORTTOCAS]]() | [[EXPORTTOCAS]]() | ||
+ | = Текст = | ||
+ | if ![[YesNo]]( 'Выгрузить изделия и товары на весы CAS?', false ) | ||
+ | return | ||
+ | endif | ||
+ | local fld, _, r09_kod, aa, sql, msg, ip_scales | ||
+ | fld := ' _0,C,4; _1,N,6; _2,C,20; _3,C,20; _4,N,14,4; _5,N,5; _6,N,5; _7,N,6; ' | ||
+ | // возвращаем код кг из справочника R09 | ||
+ | r09_kod := [[R09_KOD_KG]]() | ||
+ | try | ||
+ | WaitMsg( 'Подготовка справочника изделий и товаров', msg ) | ||
+ | _ := CreateTmpFile( fld, '_', ~IsFreeDel := true ) | ||
+ | // r11 | ||
+ | sql := [ Select TOP 100 PERCENT 'R11', KOD From R11 Where KODED = ] + r09_kod + [ Order by KOD ] | ||
+ | // sql := [ Select TOP 1 'R11', KOD From R11 Where KODED = ] + r09_kod + [ Order by KOD ] | ||
+ | SimpleSql( [ Insert into ] + TmpFilePath( _ ) + [( _0, _1 ) ] + sql, ReflisPath ) | ||
+ | // r08 | ||
+ | sql := [ Select TOP 100 PERCENT 'R08', KOD From R08 Where KODED = ] + r09_kod + [ Order by KOD ] | ||
+ | // sql := [ Select TOP 1 'R08', KOD From R08 Where KODED = ] + r09_kod + [ Order by KOD ] | ||
+ | SimpleSql( [ Insert into ] + TmpFilePath( _ ) + [( _0, _1 ) ] + sql, ReflisPath ) | ||
+ | ( _ )->( DbGoTop() ) | ||
+ | while !( _ )->( eof() ) | ||
+ | WaitMsg( a_s( ( _ )->_1 ) , msg ) | ||
+ | ( _ )->_2 := Left( RealName( ( _ )->_0, ( _ )->_1 ), 20 ) | ||
+ | ( _ )->_3 := SUBSTR( RealName( ( _ )->_0, ( _ )->_1 ), 21, 20 ) | ||
+ | ( _ )->_4 := 10 * 0 | ||
+ | ( _ )->_5 := 10 | ||
+ | if ( _ )->_0 = 'R11 ' | ||
+ | ( _ )->_6 := 22 | ||
+ | ( _ )->_7 := ( _ )->_1 + 100000 | ||
+ | else | ||
+ | // у товаров PLU совпадает с кодом в справочнике R08 | ||
+ | ( _ )->_6 := 21 | ||
+ | ( _ )->_7 := ( _ )->_1 | ||
+ | endif | ||
+ | ( _ )->( DbSkip() ) | ||
+ | end | ||
+ | ( _ )->( DbGoTop() ) | ||
+ | fld := { '_1', '_2', '_3', '_4', '_5', '_6', '_22', '_7' } | ||
+ | sql := [ Select _1, _2, _3, _4, _5, _6, Left( _2, 2 ) _22, _7 From ] + TmpFilePath( _ ) | ||
+ | aa := SqlToArr( sql, fld ) | ||
+ | finally | ||
+ | CloseTable( _ ) | ||
+ | HideMsg( msg ) | ||
+ | end | ||
+ | ip_scales := GetPrm( 'IP_SCALES', 'SHOPOPER', 1 ) | ||
+ | EXPORTTOSCALESCAS( ip_scales, 20304, aa ) | ||
+ | // ExportToScales( { 1,,,, ip_scales, 1111, 2000, 500 }, aa ) | ||
+ | Message( 'Изделия и товары успешно выгружены на весы' ) | ||
+ | // EXPORTTOSCALESCAS( "192.168.234.202", 20304, { { 4202, "Томаты", "пальчиковые", 68.35, 10, 21, "АЯ47", 1 } } ) | ||
+ | // _0 справочник | ||
+ | // _1 код изделия | ||
+ | // _2 название строка 1 | ||
+ | // _3 название строка 2 | ||
+ | // _4 цена | ||
+ | // _5 срок годности в днях | ||
+ | // _6 код группы товаров | ||
+ | // _7 PLU | ||
= Смотрите также = | = Смотрите также = | ||
[[Выгрузить изделия и товары на весы CAS]] | [[Выгрузить изделия и товары на весы CAS]] |
Версия 15:10, 14 июня 2017
EXPORTTOCAS - это программа из справочника R266
Выгрузка изделий и товаров на весы CAS
EXPORTTOCAS()
Текст
if !YesNo( 'Выгрузить изделия и товары на весы CAS?', false ) return endif local fld, _, r09_kod, aa, sql, msg, ip_scales fld := ' _0,C,4; _1,N,6; _2,C,20; _3,C,20; _4,N,14,4; _5,N,5; _6,N,5; _7,N,6; ' // возвращаем код кг из справочника R09 r09_kod := R09_KOD_KG() try WaitMsg( 'Подготовка справочника изделий и товаров', msg ) _ := CreateTmpFile( fld, '_', ~IsFreeDel := true ) // r11 sql := [ Select TOP 100 PERCENT 'R11', KOD From R11 Where KODED = ] + r09_kod + [ Order by KOD ] // sql := [ Select TOP 1 'R11', KOD From R11 Where KODED = ] + r09_kod + [ Order by KOD ] SimpleSql( [ Insert into ] + TmpFilePath( _ ) + [( _0, _1 ) ] + sql, ReflisPath ) // r08 sql := [ Select TOP 100 PERCENT 'R08', KOD From R08 Where KODED = ] + r09_kod + [ Order by KOD ] // sql := [ Select TOP 1 'R08', KOD From R08 Where KODED = ] + r09_kod + [ Order by KOD ] SimpleSql( [ Insert into ] + TmpFilePath( _ ) + [( _0, _1 ) ] + sql, ReflisPath ) ( _ )->( DbGoTop() ) while !( _ )->( eof() ) WaitMsg( a_s( ( _ )->_1 ) , msg ) ( _ )->_2 := Left( RealName( ( _ )->_0, ( _ )->_1 ), 20 ) ( _ )->_3 := SUBSTR( RealName( ( _ )->_0, ( _ )->_1 ), 21, 20 ) ( _ )->_4 := 10 * 0 ( _ )->_5 := 10 if ( _ )->_0 = 'R11 ' ( _ )->_6 := 22 ( _ )->_7 := ( _ )->_1 + 100000 else // у товаров PLU совпадает с кодом в справочнике R08 ( _ )->_6 := 21 ( _ )->_7 := ( _ )->_1 endif ( _ )->( DbSkip() ) end ( _ )->( DbGoTop() ) fld := { '_1', '_2', '_3', '_4', '_5', '_6', '_22', '_7' } sql := [ Select _1, _2, _3, _4, _5, _6, Left( _2, 2 ) _22, _7 From ] + TmpFilePath( _ ) aa := SqlToArr( sql, fld ) finally CloseTable( _ ) HideMsg( msg ) end ip_scales := GetPrm( 'IP_SCALES', 'SHOPOPER', 1 ) EXPORTTOSCALESCAS( ip_scales, 20304, aa ) // ExportToScales( { 1,,,, ip_scales, 1111, 2000, 500 }, aa ) Message( 'Изделия и товары успешно выгружены на весы' ) // EXPORTTOSCALESCAS( "192.168.234.202", 20304, { { 4202, "Томаты", "пальчиковые", 68.35, 10, 21, "АЯ47", 1 } } ) // _0 справочник // _1 код изделия // _2 название строка 1 // _3 название строка 2 // _4 цена // _5 срок годности в днях // _6 код группы товаров // _7 PLU