RET BAR KOD2

Материал из Фабиус wiki
Перейти к: навигация, поиск

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

Если имеются одинаковые PNAME и ID ( задвоенные записи ), то удаляем записи без KODORG

Текст

local sql, aa, i, r08, last_pname

sql := [ Select ID From R08 Where ID <> "" Group by PNAME, ID Having Count( * ) > 1 ]
aa := SqlToArr( sql, { 'ID' }, ReflisPath )

if !IsEmpty( aa )
  aa := PrepareArr( aa )
  for i := 1 to len( aa )
    try
      r08 := OpenKlsf( 'R08' )
      ( r08 )->( SetFilter( [ ID = '] + aa[i] + [' ] ) )
      last_pname := ( r08 )->PNAME
      ( r08 )->( DbSkip() )
      if last_pname == ( r08 )->PNAME
        // имена совпадают - удаляем запись без производителя KODORG
        ( r08 )->( SetFilter( [ ID = '] + aa[i] + [' and KODORG = 0 ] ) )
        ( r08 )->( TryToDelete() )
      endif
    finally
      CloseTable( r08 )
    end
  next
endif

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

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

Функции Delphi