Pateikiama informacija, kaip MSCAN sprendime teisingai sukonfigūruoti tam tikrų operacijos eilučių (pavyzdžiui, transporto paslaugų, pardavimo kodų ar kitų ne fizinių prekių) ignoravimą. Tai leidžia vartotojams patogiai skenuoti tik realias prekes, o sistemai – sklandžiai užbaigti operaciją.
MSCAN aplikacijoje eilučių filtravimui naudojamas Rivile Gama MSCAN parametras MSCAN_DFIL.
Šis parametras apriboja atvaizduojamą informaciją. Pavyzdžiui, įrašius reikšmę N17_TIPAS = 1, vartotojui bus rodomos tik prekės, o paslaugos ar kiti kodai bus paslėpti.

Nors MSCAN_DFIL paslepia eilutes ekrane, operacijos pabaigimo metu į šį filtrą nėra atsižvelgiama.
Su viena MSCAN operacija vienu metu lygiagrečiai gali dirbti keli vartotojai. Skirtingi vartotojai gali turėti skirtingus filtrus (pavyzdžiui, kiekvienas mato tik savo padalinio priskirtas prekes). Operacijos pabaigimo procesas privalo apdoroti ir įvertinti visų vartotojų atliktus pakeitimus ir visos operacijos būklę, todėl asmeniniai vaizdo filtrai čia negalioja. Jei dalis eilučių liks neapdorotos, sistema pabaigimo metu jas pašalins.
Yra galimybė prekių skenavimo metu iškviesti formulę, kuri atitinkamas eilutes pažymėtų kaip pabaigtas ir taip išvengti šių eilučių pašalinimo pabaigiant operaciją.
Veikimo principas: Nuskenavus pačią pirmą prekę, automatiškai suveikia formulė, kuri pereina per visas operacijos eilutes. Visos eilutės, kurios atitinka nurodytus kriterijus, yra programiškai pažymimos kaip pilnai atrinktos. Kadangi šios eilutės tampa užbaigtos, operacijos pabaigimo metu sistema jas sėkmingai ignoruoja.
Sprendimo privalumai ir lankstumas: ši vieta yra pritaikoma pagal reikalingą verslo logiką.
Pavyzdžiai į ką galima atsižvelgti automatinio patvirtinimo formulėje:
N17_TIPAS).Formulė naudojama Rivile Gama parametre MSCAN_SKEN lauke Formulė PRIEŠ.
declare @module char(2), @operationCode char(12), @operationType char(20), @mscanUser char(12)
select @module = module, @operationCode = operationCode, @operationType = operationType, @mscanUser = mscanUser from #inParams
-- paslaugos ir kodai pažymimi kaip pilnai atrinkti
if @module in ('PO', 'RO')
insert into dbo.RGI_MSCAN_D (operationCode, module, operationType, rowNumber, productCode, productName, mscanCode, barcode, objectCode, lot,
unitCode, quantityApp, quantityDoc, fraction, isFullyCollected, addUser, updateUser, updateDate, addDate)
select i07_kodas_po, @module, @operationType, i07_eil_nr, i07_kodas, i07_pav, '', isnull(n37_bar_kodas, ''), i07_kodas_os, i07_serija,
i07_kodas_us_p, i07_alt_kiekis, i07_alt_kiekis, i07_alt_frak, 1, @mscanUser, @mscanUser, convert(char(30),getdate(),20), convert(char(30),getdate(),20)
from dbo.I07_PARD left join dbo.RGI_MSCAN_D on module = @module and i07_kodas_po = operationCode
left join dbo.N17_PROD on i07_kodas = n17_kodas_ps left join dbo.N37_PMAT on n17_kodas_ps = n37_kodas_ps and i07_kodas_us_p = n37_kodas_us
where i07_kodas_po = @operationCode and id is null and (n17_kodas_ps is null or n17_tipas = 2)
