RET BAR KOD — различия между версиями

Материал из Фабиус wiki
Перейти к: навигация, поиск
м (Текст программы)
м
Строка 1: Строка 1:
RET_BAR_KOD -это программа из справочника [[R266]]
+
[[RET_BAR_KOD]] - это программа из справочника [[R266]]
 
+
Вернуть код номенклатуры из справочника [[R08]] по указанному штрихкоду
RET_BAR_KOD(bar_code,  name,  nds)
+
[[RET_BAR_KOD]]( bar_code,  name,  nds )
 
+
Вернуть код номенклатуры из справочника R08 по указанному штрихкоду
+
  
 
bar_code - штрихкод
 
bar_code - штрихкод
Строка 10: Строка 8:
  
 
nds - НДС
 
nds - НДС
 
+
= Текст =
= Текст программы =
+
 
+
 
  parameters bar_code, name, nds
 
  parameters bar_code, name, nds
 
   
 
   
Строка 47: Строка 43:
 
   result := kod
 
   result := kod
 
  endif
 
  endif
 
 
= Смотрите также =
 
= Смотрите также =
 +
[[Полезные функции]]
  
 
[[Функции Delphi]]
 
[[Функции Delphi]]
 
[[Полезные функции]]
 

Версия 10:23, 27 июля 2017

RET_BAR_KOD - это программа из справочника R266

Вернуть код номенклатуры из справочника R08 по указанному штрихкоду

RET_BAR_KOD( bar_code, name, nds )

bar_code - штрихкод

name - наименование номенклатуры

nds - НДС

Текст

parameters bar_code, name, nds

local sql, kod, auto_id, r08

sql := [ Select KOD From R08 Where BAR_CODE = '] + bar_code + [' ]
result := SqlToArr( sql,, ReflisPath )

if Empty( result )
  sql := [ Select MAX( KOD ) From R08 ]
  kod := SqlToArr( sql,, ReflisPath )
  if kod = 99999
    kod := 1
    auto_id := SeekRef( 'R08', kod, 'AUTO_ID', 1 )
    while !Empty( auto_id )
      kod := kod + 1
      auto_id := SeekRef( 'R08', kod, 'AUTO_ID', 1 )
    end
  else
    kod := kod + 1
  endif

  try
    r08 := OpenKlsf( 'R08' )
    ( r08 )->( DbAppend() )
    ( r08 )->KOD := kod
    ( r08 )->PNAME := name
    ( r08 )->PRODNDS := nds
    ( r08 )->BAR_CODE := bar_code
    ( r08 )->( Refresh() )
  finally
    CloseKlsf( r08 )
  end
  result := kod
endif

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

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

Функции Delphi