• Merhaba Ziyaretçi,
    Microsoft 365 Uygulamaları ile ilgili yeni haberler, dikkat çekici konular, ilgi ile takip edeceğiniz yazılar için.

    Abone Olun
  • ESTE - Microsoft Office Eğitimleri

    Yeni yıl Microsoft Office Eğitim planlarınız için bütçenizi oluşturmadan önce ESTE eğitim kalitesi ile tanışın. 🙌
    Kullanıcıların ihtiyacı olan yazılı materyal, dosya ve video kaynağı desteğimiz ile tüm ofis çalışanlarının iş süreçlerini rahatlatacak eğitimler planlayın. 🎯
    Microsoft Office eğitimlerimiz hakkında detaylı bilgi için bize ulaşın.

    👉 Microsoft Office Eğitim Talebi

Yardım Ürün Reçetesi Ağacı.

salih.gurel

Yeni Üye
Katılım
9 May 2020
Mesajlar
16
En iyi yanıt
0
Puanları
1
Yaş
39
Konum
İstanbul
Ad Soyad
Salih Gürel
Merhabalar,

Tiger3Enterprise da ürün reçetelerini sql sorgusu ile çekebiliyorum.

Fakat üretim 3 seviyeden oluşuyor şöyleki,
Mamül içerisinde yarımamül tüketimi oluyor.
Yarımamülün içerisinde başka bir yarımamül tüketiliyor.

Ürün Reçeteleri - Ürün Reçete Ağacı Oluşturma Menüsünde 'Yarımamüller Patlatıcak' kutucuğunu işaretleyerek aldığımız sonucu bir sql sorgusu ile alabilme şansımız varmı?

Yardımlarınız için şimdiden teşekkür ederim.
 

Vedat ÖZER

Logo Uzmanı
Geliştirici
Katılım
4 Haz 2018
Mesajlar
288
En iyi yanıt
4
Puanları
63
Yaş
33
Konum
Antalya / Merkez
Ad Soyad
Vedat ÖZER
Office Vers.
2019
Merhaba,

Aşağıdaki sorgu size yol gösterecektir.


Kod:
WITH Recete AS
(
         SELECT STCOMPLN.MAINCREF,STCOMPLN.STCREF,STCOMPLN.AMNT, 0 AS LEVEL
         FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
         WHERE STCOMPLN.MAINCREF IN (SELECT LOGICALREF FROM LG_002_ITEMS WHERE
CARDTYPE=12)
 
         UNION ALL

         SELECT STCOMPLN.MAINCREF,STCOMPLN.STCREF,STCOMPLN.AMNT, Recete.LEVEL + 1
         FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
         JOIN Recete ON STCOMPLN.MAINCREF = RECETE.STCREF

 )
SELECT
         [Girdi Kodu]=ITEMS.CODE
        ,[Girdi Açıklaması]=ITEMS.NAME
        ,[Çıktı Kodu]=ITEMS_MAIN.CODE
        ,[Çıktı Açıklaması]=ITEMS_MAIN.NAME
        ,[Miktar]=RECETE.AMNT
        ,[Seviye]=RECETE.LEVEL
        FROM Recete   
LEFT JOIN LG_002_ITEMS ITEMS WITH(NOLOCK) ON ITEMS.LOGICALREF=RECETE.STCREF
LEFT JOIN LG_002_ITEMS ITEMS_MAIN WITH(NOLOCK) ON
ITEMS_MAIN.LOGICALREF=Recete.MAINCREF
 

enverdersin

Yeni Üye
Katılım
8 Şub 2019
Mesajlar
163
En iyi yanıt
0
Puanları
18
Yaş
45
Konum
istanbul
Ad Soyad
ENVER DERSİN
Merhaba,

Aşağıdaki sorgu size yol gösterecektir.


Kod:
WITH Recete AS
(
         SELECT STCOMPLN.MAINCREF,STCOMPLN.STCREF,STCOMPLN.AMNT, 0 AS LEVEL
         FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
         WHERE STCOMPLN.MAINCREF IN (SELECT LOGICALREF FROM LG_002_ITEMS WHERE
CARDTYPE=12)
 
         UNION ALL

         SELECT STCOMPLN.MAINCREF,STCOMPLN.STCREF,STCOMPLN.AMNT, Recete.LEVEL + 1
         FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
         JOIN Recete ON STCOMPLN.MAINCREF = RECETE.STCREF

 )
SELECT
         [Girdi Kodu]=ITEMS.CODE
        ,[Girdi Açıklaması]=ITEMS.NAME
        ,[Çıktı Kodu]=ITEMS_MAIN.CODE
        ,[Çıktı Açıklaması]=ITEMS_MAIN.NAME
        ,[Miktar]=RECETE.AMNT
        ,[Seviye]=RECETE.LEVEL
        FROM Recete  
LEFT JOIN LG_002_ITEMS ITEMS WITH(NOLOCK) ON ITEMS.LOGICALREF=RECETE.STCREF
LEFT JOIN LG_002_ITEMS ITEMS_MAIN WITH(NOLOCK) ON
ITEMS_MAIN.LOGICALREF=Recete.MAINCREF
bu rapora birim (adet kg) ve son alış fiyatını getirebilir miyiz?
 

Byyazar

Yeni Üye
Katılım
6 Mar 2023
Mesajlar
20
En iyi yanıt
0
Puanları
3
Yaş
36
Konum
KASTAMONU
Ad Soyad
Eray YEŞİLYURT
Office Vers.
2010
merhaba dene lütfen
WITH Recete AS
(
SELECT STCOMPLN.MAINCREF, STCOMPLN.STCREF, STCOMPLN.AMNT, 0 AS LEVEL
FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
WHERE STCOMPLN.MAINCREF IN (SELECT LOGICALREF FROM LG_002_ITEMS WHERE CARDTYPE = 12)

UNION ALL

SELECT STCOMPLN.MAINCREF, STCOMPLN.STCREF, STCOMPLN.AMNT, Recete.LEVEL + 1
FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
JOIN Recete ON STCOMPLN.MAINCREF = RECETE.STCREF
)
SELECT
[Girdi Kodu]=ITEMS.CODE,
[Girdi Açıklaması]=ITEMS.NAME,
[Çıktı Kodu]=ITEMS_MAIN.CODE,
[Çıktı Açıklaması]=ITEMS_MAIN.NAME,
[Miktar]=RECETE.AMNT,
[Seviye]=RECETE.LEVEL,
[Birim]=UNITS.CODE,
[Son Alış Fiyatı]=(
SELECT TOP 1 PURCHTRANS.PRICE
FROM LG_002_PURCHTRANS PURCHTRANS
WHERE PURCHTRANS.STOCKREF = ITEMS.LOGICALREF
AND PURCHTRANS.DATE_ <= GETDATE()
ORDER BY PURCHTRANS.DATE_ DESC
)
FROM Recete
LEFT JOIN LG_002_ITEMS ITEMS WITH(NOLOCK) ON ITEMS.LOGICALREF=RECETE.STCREF
LEFT JOIN LG_002_ITEMS ITEMS_MAIN WITH(NOLOCK) ON ITEMS_MAIN.LOGICALREF=Recete.MAINCREF
LEFT JOIN LG_002_UNITS UNITS WITH(NOLOCK) ON UNITS.LOGICALREF=ITEMS.UNITSETREF
 

enverdersin

Yeni Üye
Katılım
8 Şub 2019
Mesajlar
163
En iyi yanıt
0
Puanları
18
Yaş
45
Konum
istanbul
Ad Soyad
ENVER DERSİN
merhaba dene lütfen
WITH Recete AS
(
SELECT STCOMPLN.MAINCREF, STCOMPLN.STCREF, STCOMPLN.AMNT, 0 AS LEVEL
FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
WHERE STCOMPLN.MAINCREF IN (SELECT LOGICALREF FROM LG_002_ITEMS WHERE CARDTYPE = 12)

UNION ALL

SELECT STCOMPLN.MAINCREF, STCOMPLN.STCREF, STCOMPLN.AMNT, Recete.LEVEL + 1
FROM LG_002_STCOMPLN STCOMPLN WITH(NOLOCK)
JOIN Recete ON STCOMPLN.MAINCREF = RECETE.STCREF
)
SELECT
[Girdi Kodu]=ITEMS.CODE,
[Girdi Açıklaması]=ITEMS.NAME,
[Çıktı Kodu]=ITEMS_MAIN.CODE,
[Çıktı Açıklaması]=ITEMS_MAIN.NAME,
[Miktar]=RECETE.AMNT,
[Seviye]=RECETE.LEVEL,
[Birim]=UNITS.CODE,
[Son Alış Fiyatı]=(
SELECT TOP 1 PURCHTRANS.PRICE
FROM LG_002_PURCHTRANS PURCHTRANS
WHERE PURCHTRANS.STOCKREF = ITEMS.LOGICALREF
AND PURCHTRANS.DATE_ <= GETDATE()
ORDER BY PURCHTRANS.DATE_ DESC
)
FROM Recete
LEFT JOIN LG_002_ITEMS ITEMS WITH(NOLOCK) ON ITEMS.LOGICALREF=RECETE.STCREF
LEFT JOIN LG_002_ITEMS ITEMS_MAIN WITH(NOLOCK) ON ITEMS_MAIN.LOGICALREF=Recete.MAINCREF
LEFT JOIN LG_002_UNITS UNITS WITH(NOLOCK) ON UNITS.LOGICALREF=ITEMS.UNITSETREF
LG_002_UNITS hatası verdi. nedeni ne olabilir?
 

Byyazar

Yeni Üye
Katılım
6 Mar 2023
Mesajlar
20
En iyi yanıt
0
Puanları
3
Yaş
36
Konum
KASTAMONU
Ad Soyad
Eray YEŞİLYURT
Office Vers.
2010
Bu hata tablo ismi hatalı yada o tablo olmadığı içindir. Bu SQL sorgusu, "LG_002_STCOMPLN", "LG_002_ITEMS" ve "LG_002_UNITS" adlı tablolardan veri çekerek bir işlem yapar. Senin yazdığın kodda LG_002_UNITS tablosu vardı ben yüzden o şekilde yazdım.
 

Byyazar

Yeni Üye
Katılım
6 Mar 2023
Mesajlar
20
En iyi yanıt
0
Puanları
3
Yaş
36
Konum
KASTAMONU
Ad Soyad
Eray YEŞİLYURT
Office Vers.
2010
Tablo isimlerini verebilirsen daha kolay olur işimiz
 
Üst Alt