EXPORTTOSHTRIHPRINT3 — различия между версиями

Материал из Фабиус wiki
Перейти к: навигация, поиск
(Новая страница: «= Смотрите также = Полезные функции Функции Delphi»)
 
м (Смотрите также)
 
(не показана одна промежуточная версия этого же участника)
Строка 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 код группы товаров

Смотрите также

Полезные функции

Функции Delphi