AIFA AKADEMI · Kurumsal Wiki
4.310 makale
Ana sayfa Kurumsal Wiki › Destek › Processes › PROC-81

Maden Maliyeti Cari.Islemlerdeki Kur u Baz Alması

SUPPORT_PROCESSMOD-CARIERPGOLD_COREACTIVEHIGHDOCUMENTED
Kanonik kaynak: markdown · bu sayfa üretilmiş görünümdür

Kaynak: KB-v1 08_SupportPlaybooks/Processes/PROC-81.mdSurecler/*.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