EXPORTTOSHTRIHPRINT3 — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) (Новая страница: «= Смотрите также = Полезные функции Функции Delphi») |
Hisava (обсуждение | вклад) м (→Смотрите также) |
||
(не показана одна промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | [[EXPORTTOSHTRIHPRINT3]] - это программа из справочника [[R266]] | ||
+ | Выгрузка изделий и товаров на весы | ||
+ | [[EXPORTTOSHTRIHPRINT3]]() | ||
+ | = Текст = | ||
+ | if ![[YesNo]]( 'Выгрузить изделия и товары на весы ?', 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; ' | ||
+ | |||
+ | // возвращаем код кг из справочника 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 ] | ||
+ | [[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 ] | ||
+ | [[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 | ||
+ | ( _ )->_5 := 10 | ||
+ | if ( _ )->_0 = '[[R11]] ' | ||
+ | ( _ )->_6 := 22 | ||
+ | else | ||
+ | ( _ )->_6 := 21 | ||
+ | ( _ )->_1 := ( _ )->_1 + 100000 | ||
+ | endif | ||
+ | ( _ )->( [[DbSkip]]() ) | ||
+ | end | ||
+ | ( _ )->( [[DbGoTop]]() ) | ||
+ | |||
+ | fld := { '_1', '_2', '_3', '_4', '_5', '_6' } | ||
+ | sql := [ Select _1, _2, _3, _4, _5, _6 From ] + [[TmpFilePath]]( _ ) | ||
+ | aa := [[SqlToArr]]( sql, fld ) | ||
+ | finally | ||
+ | [[CloseTable]]( _ ) | ||
+ | [[HideMsg]]( msg ) | ||
+ | end | ||
+ | |||
+ | ip_scales := [[GetPrm]]( 'IP_SCALES', 'SHOPOPER', 1 ) | ||
+ | [[ExportToScales]]( { 1,,,, ip_scales, 1111, 2000, 500 }, aa ) | ||
+ | [[Message]]( 'Изделия и товары успешно выгружены на весы' ) | ||
+ | |||
+ | // _0 справочник | ||
+ | // _1 код изделия | ||
+ | // _2 название строка 1 | ||
+ | // _3 название строка 2 | ||
+ | // _4 цена | ||
+ | // _5 срок годности в днях | ||
+ | // _6 код группы товаров | ||
= Смотрите также = | = Смотрите также = | ||
[[Полезные функции]] | [[Полезные функции]] | ||
[[Функции Delphi]] | [[Функции Delphi]] |
Текущая версия на 08:08, 9 июня 2017
EXPORTTOSHTRIHPRINT3 - это программа из справочника R266
Выгрузка изделий и товаров на весы
EXPORTTOSHTRIHPRINT3()
Текст
if !YesNo( 'Выгрузить изделия и товары на весы ?', 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; ' // возвращаем код кг из справочника 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 ] 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 ] 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 ( _ )->_5 := 10 if ( _ )->_0 = 'R11 ' ( _ )->_6 := 22 else ( _ )->_6 := 21 ( _ )->_1 := ( _ )->_1 + 100000 endif ( _ )->( DbSkip() ) end ( _ )->( DbGoTop() ) fld := { '_1', '_2', '_3', '_4', '_5', '_6' } sql := [ Select _1, _2, _3, _4, _5, _6 From ] + TmpFilePath( _ ) aa := SqlToArr( sql, fld ) finally CloseTable( _ ) HideMsg( msg ) end ip_scales := GetPrm( 'IP_SCALES', 'SHOPOPER', 1 ) ExportToScales( { 1,,,, ip_scales, 1111, 2000, 500 }, aa ) Message( 'Изделия и товары успешно выгружены на весы' ) // _0 справочник // _1 код изделия // _2 название строка 1 // _3 название строка 2 // _4 цена // _5 срок годности в днях // _6 код группы товаров