Kaynak: KB-v1
08_SupportPlaybooks/Processes/PROC-81.md←Surecler/*.doc(destek süreç dokümanı; parola/IP/terminal maskelenmiş). Gerçeklik: DOCUMENTED — kodla doğrulanmış değil.
Maden Maliyeti Cari.Islemlerdeki Kur u Baz Alması
Kimlik: PROC-81 · Ürün: ERPGOLDV2 · Kategori: İşlem girişi, düzeltme ve stok · Katalog: Maden Maliyeti Cari.Islemlerdeki Kur u Baz Alması
Kaynak: AifaSoft destek süreç dokümanı (Word). Şifre, kullanıcı adı, terminal no ve IP bilgileri kaynak aşamasında maskelenmiştir; görseller resimli süreç kitabındadır.
ERPGOLDv2 Maden Maliyeti V.1
SQL Servera bağlanılır New query diyerek yeni bir query sayfası açılır ve aşağıdaki kod yapıştırılır
-----------CARİ.ISLEMLERDEKİ İŞLEM KURUNU BAZ ALIYOR
USE [ERPGOLDV2]
GO
/****** Object: UserDefinedFunction [Stok].[GetMadenMaliyeti] Script Date: 23.09.2021 12:45:40 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER Function [Stok].[GetMadenMaliyeti] (@SubeId int,@KasaId int,@StokId int,@Tarih as Date,@StokMiktar Decimal(18,2))
returnS Decimal(18,2)
as
BEGIN
Declare @IscTur int=0
Declare @BirimId int =0
Select @IscTur=IscTuru,@BirimId =MaliyetBirimId From Stok.Maden Where Id=@StokId
Declare @Miktar Decimal(18,2)=0
Declare @Maliyet Decimal(18,2)=0
Declare @ToplamMiktar Decimal(18,2)=0
Declare @ToplamMaliyet Decimal(18,2)=0
Declare @IsExit as int =0
DECLARE CRS_MadenBirimMaliyetTL CURSOR FOR
Select top 50 Case When @IscTur =0 Then H.Adet Else H.Miktar End as Miktar,Fn.Bol(H.Maliyet,I.HasKur) as Maliyet FRom Stok.StokHaraketleri H Left Join Cari.Islemler I on I.Id=H.IslemId Where (H.Tarih<=@Tarih or @Tarih is null) and (H.SubeId=@SubeId or @SubeId =0) And (H.KasaId =@KasaId Or @KasaId =0) And H.StokId=@StokId and StokTipi =1 And H.IslemTuru =0 Order By IslemId Desc
OPEN CRS_MadenBirimMaliyetTL
FETCH NEXT FROM CRS_MadenBirimMaliyetTL INTO @Miktar,@Maliyet
WHILE @@FETCH_STATUS =0 and @IsExit =0
BEGIN
if (@ToplamMiktar + @Miktar)<=@StokMiktar
BEGIN
set @ToplamMiktar +=@Miktar
Set @ToplamMaliyet +=@Maliyet
END
ELSE
BEGIN
Set @ToplamMaliyet +=FN.Bol (@Maliyet ,@Miktar) * (@StokMiktar - @ToplamMiktar)
Set @ToplamMiktar = @StokMiktar
SET @IsExit =1
END
FETCH NEXT FROM CRS_MadenBirimMaliyetTL INTO @Miktar,@Maliyet
END
CLOSE CRS_MadenBirimMaliyetTL
DEALLOCATE CRS_MadenBirimMaliyetTL
RETURN CONVERT(Decimal(18,2), @ToplamMaliyet)
END
Kaynaklar
- SRC-PROC-DOC — süreç dokümanı #81
