---
title: "Pardavimo dokumento suma ir prekių kainos."
url: "https://gidas.rivile.lt/internetiniai_moduliai/mscan/duk/duk_022"
updated: "2025-10-07"
parent: "https://gidas.rivile.lt/internetiniai_moduliai/mscan/duk.md"
---

# Pardavimo dokumento suma ir prekių kainos.

> **Patarimas:**  Ar galima MSCAN matyti pardavimo dokumento sumą ir prekių kainas?

Tokia galimybė yra, tačiau su tam tikromis sąlygomis.

##### **Prekės kaina**

Norint matyti prekių kainas, atitinkamai aprašomas parametras [MSCAN_DSAR.](https://gidas.rivile.lt/internetiniai_moduliai/mscan/mscan_diegimas/mscan_parametrai.md#mscan_dsar-mscan_drus-mscan_dfil-dokumento-detaliose-eilutėse-ma)

Pavyzdžiui, norint detalioje eilutėje matyti prekės pavadinimą, matavimo vienetą ir kainą:

```mssql
trim(productName)+' , '+unitCode+', kaina: '+cast(isnull(i07_kaina_su,0) as char(10))+' Eur'
```

![duk_022_1](https://gidas.rivile.lt/user/pages/010.internetiniai_moduliai/06.mscan/95.DUK/duk_022/duk_022_1.png)

> **Dėmesio:** Prekės kaina MSCAN aplikacijoje bus rodoma tik tuo atveju, jei ji matoma Rivile GAMA programoje atitinkamoje detalioje eilutėje.

![duk_022_1](https://gidas.rivile.lt/user/pages/010.internetiniai_moduliai/06.mscan/95.DUK/duk_022/duk_022_5.png)

> **Dėmesio:** Nuskenavus prekę, kurios nebuvo pirminiame dokumente, Rivile GAMA dokumente ji atsiras tik tada, jei įjungtas parametras [MSCAN_ITRAUK](https://gidas.rivile.lt/internetiniai_moduliai/mscan/mscan_diegimas/mscan_parametrai.md#mscan_itrauk-veiksmai-su-prekėmis-kurių-nebuvo-pirminiame-dokume). Tokiu atveju jos kaina parodoma.<br/>Jeigu prekė nėra įtraukiama į Rivile GAMA dokumentą, jos kaina bus lygi 0.



![duk_022_1](https://gidas.rivile.lt/user/pages/010.internetiniai_moduliai/06.mscan/95.DUK/duk_022/duk_022_2.png)



##### **Dokumento suma**

Jeigu dokumentai vedami tik Rivile GAMA programoje, neleidžiant įterpti detalių eilučių per MSCAN, užtenka aprašyti parametrą [MSCAN_HSAR](https://gidas.rivile.lt/internetiniai_moduliai/mscan/mscan_diegimas/mscan_parametrai.md#mscan_hsar-mscan_hrus-mscan_hfil-dokumentų-sąraše-matoma-informa), kad parodytų įvesto dokumento sumą:

Pavyzdžiui, prie dokumento informacijos norint matyti operacijos numerį ir dokumento sumą:

```mssql
operationCode+ ', suma: '+CAST(i06_suma+i06_suma_pvm as char(12))+' Eur'
```



![duk_022_1](https://gidas.rivile.lt/user/pages/010.internetiniai_moduliai/06.mscan/95.DUK/duk_022/duk_022_3.png)

Jeigu dokumentai kuriami per MSCAN aplikaciją arba leidžiama į dokumentus pridėti papildomas eilutes, tokio aprašymo nepakanka. Tokiu atveju galima sukurti SQL funkciją, kuri pagal reikiamą logiką apskaičiuotų dokumento sumą.

> **Dėmesio:** Jeigu prekės eilutė į dokumentą įtraukiama per MSCAN aplikaciją, jos kiekis Rivile GAMA dokumente būna lygus 0. Kiekis iškoreguojamas tik operacijos užbaigimo metu.

Pavyzdyje pateikta funkcija, kuri pardavimo dokumento sumą skaičiuoja pagal tokį algoritmą:
1. Detalios eilutės suma yra lygi Rivile GAMA programoje įvestam kiekiui padaugintam iš Rivile GAMA programoje nurodytos kainos.
2. Jeigu Rivile GAMA detalioje eilutėje kiekis yra lygus 0, tuomet eilutės suma lygi MSCAN aplikacijoje nuskenuotam kiekiui padaugintam iš Rivile GAMA programoje nurodytos kainos.

```mssql
CREATE OR ALTER FUNCTION [dbo].[RGI_MSCAN_HSAR_DOKSUMA] (@kodas_op char(12),@modulis char(2))
RETURNS varchar(20)
as
BEGIN
	declare @suma numeric(12,2)
	
	if @modulis = 'RO'
	begin
		SELECT @suma = isnull((SELECT SUM(ROUND(((CASE WHEN i07_alt_kiekis = 0 THEN quantityApp ELSE i07_alt_kiekis END)/I07_ALT_FRAK)*i07_kaina_su,2))
		FROM	
		(SELECT I07_EIL_NR, I07_ALT_KIEKIS, I07_ALT_FRAK, I07_KAINA_SU, quantityApp from I07_PARD
			LEFT JOIN RGI_MSCAN_D ON operationCode = I07_KODAS_PO AND rowNumber = I07_EIL_NR AND module = 'RO' 
		where I07_KODAS_PO = @kodas_op) as i07), 0)


		RETURN CAST(@suma as varchar(12)) + ' Eur'
	end

	RETURN ''
END
```

Tokia SQL funkcija toliau gali būti naudojama aprašant parametrą [MSCAN_HSAR](https://gidas.rivile.lt/internetiniai_moduliai/mscan/mscan_diegimas/mscan_parametrai.md#mscan_hsar-mscan_hrus-mscan_hfil-dokumentų-sąraše-matoma-informa).

Pavyzdžiui, prie dokumento informacijos norint matyti operacijos numerį ir dokumento sumą:

```mssql
operationCode+ ', suma: '+dbo.RGI_MSCAN_HSAR_DOKSUMA(operationCode, 'RO')
```

![duk_022_1](https://gidas.rivile.lt/user/pages/010.internetiniai_moduliai/06.mscan/95.DUK/duk_022/duk_022_4.png)
