Vraag van een leek SQL Datum?

Status
Niet open voor verdere reacties.

barendrecht82

Gebruiker
Lid geworden
24 mrt 2013
Berichten
230
Hoi allemaal,

Volgens mij is dit SQL


Mijn vraag is eigenlijk: Ik heb een lijst met producten die ik kan oproepen met deze sql. Alleen zou ik graag ook de prijzen willen zien van producten die voor een bepaalde datum lagen.

Is dit mogelijk om deze code aan te passen of is het te kort door de bocht??

SELECT PrijsAgreement, itemcode, description, CrdNr, CrdName, Items.condition, Unitcode, ValidFrom, ValidTo, Price, staffl_id, items_id, artlev_id, ItemCodeAccount FROM ( select * from ( (select null as PrijsAgreement, items.itemcode, items.description, cicmpy.crdcode as CrdNr, cicmpy.cmp_name as CrdName, Items.condition, itemaccounts.purchasepackage as Unitcode, null as ValidFrom, null as ValidTo, itemaccounts.PurchasePrice as Price, null as staffl_id, Items.id as items_id, itemaccounts.id as artlev_id, itemAccounts.ItemCodeAccount as ItemCodeAccount From items join itemaccounts on items.itemcode = itemaccounts.itemcode join cicmpy on itemaccounts.crdnr = cicmpy.crdnr where Items.condition = 'A' )) a) items ORDER BY itemcode
 
a) zet de SQL code even tussen SQL tags anders kunnen we er echt geen kaas van maken
b) we kunnen niet magisch bepalen wat alles is in een query. Er is al een validfrom en validto veld. Wat bepaald verder welke items worden weergegeven?
 
a) zet de SQL code even tussen SQL tags anders kunnen we er echt geen kaas van maken
b) we kunnen niet magisch bepalen wat alles is in een query. Er is al een validfrom en validto veld. Wat bepaald verder welke items worden weergegeven?

Ik zou echt niet weten hoe dat moet. ik ben een leek. Als ik deze code run dan krijg ik een lijst met alle producten met de huidige inkoopprijzen te zien. Ik wil namelijk (als het kan) de sql aanpassen met de datum zodat ik oude prijzen ook kan zien tot een bepaalde datum en dan kan vergelijken...
 
De huidige query is niet an sich gelimiteerd tot een bepaalde datum. Tenzij er een business logic / form / front-end nog bovenop zit die filtert op waardes die terugkomen op de "valid" kolommen. In dat geval zit je probleem niet in de query maar in je front-end.

Voer je deze query direct uit op het management console van je database?
 
Ik zou echt niet weten hoe dat moet. ik ben een leek.
Maar je weet wél de quote knop te vinden :).. Als je code toevoegt, kun je die opmaken met knoppen die pal boven het tekstvak staan. Daar hoef je geen specialist of leek voor te zijn, om die knoppen te zien. Het staat ook in het FAQ hoe het forum werkt, wat elke gebruiker natuurlijk wel gelezen heeft :D.
Er zijn een paar knoppen die je kunt gebruiken:
1. knop #
2. knop php.
Kijk maar welke je het beste resultaat vind geven.

Wat je vraag betreft: als je extra velden wilt zien, heeft het weinig zin om een query te posten waar dat veld niet in zit; wij kunnen niet ruiken uit welke tabel dat veld dan wél moet komen.
 
SELECT (CASE WHEN ep.PropName = 'Class_01' THEN 'Assortiment 1 (Selectiecode)'
WHEN ep.PropName = 'Class_02' THEN 'Assortiment 2 (KAM Artikel)'
WHEN ep.PropName = 'Class_03' THEN 'Assortiment 3 (Productieprint)'
WHEN ep.PropName = 'Class_04' THEN 'Assortiment 4 (Voorraadgestuurd)'
WHEN ep.PropName = 'Class_05' THEN 'Assortiment 5 (Balans)'
WHEN ep.PropName = 'Class_06' THEN 'Assortiment 6 (Produktieorders)'
WHEN ep.PropName = 'Class_07' THEN 'Assortiment 7 (Assortment 7)'
WHEN ep.PropName = 'Class_08' THEN 'Assortiment 8 (Assortment 8)'
WHEN ep.PropName = 'Class_09' THEN 'Assortiment 9 (Assortment 9)'
WHEN ep.PropName = 'Class_10' THEN 'Assortiment 10 (MRP)'
WHEN ep.PropName = 'ConfigurationClass' THEN 'Configuratieklasse'
WHEN ep.PropName = 'NetWeight' THEN '(nto: niet van toepassing)'
ELSE ep.PropName END) AS FieldName, (CASE WHEN ep.CaptionTermID = 4138 THEN 1102
WHEN ep.CaptionTermID = 222 THEN 1162
ELSE ep.CaptionTermID
END) AS TermId, (CASE
WHEN ep.propname IN ('IsAssembled','IsBackToBackOrder','IsBatchItem','IsDiscount','IsExplode','IsOutsourcedItem') THEN (CASE ed.oldvalue WHEN 1 THEN 'True' ELSE 'False' END)
WHEN ep.propname = 'CommissionMethod' THEN (CASE WHEN ed.oldvalue = 'F' THEN 'Vast bedrag' WHEN ed.oldvalue = 'M' THEN 'Marge %' WHEN ed.oldvalue = 'S' THEN 'Verkoopprijs' ELSE ed.oldvalue END)
WHEN ep.propname = 'Condition' THEN (CASE WHEN ed.oldvalue = 'A' THEN 'Actief' WHEN ed.oldvalue = 'B' THEN 'Geblokkeerd' WHEN ed.oldvalue = 'D' THEN 'Vervallen' WHEN ed.oldvalue = 'F' THEN 'Toekomstig' WHEN ed.oldvalue = 'E' THEN 'Non-actief' ELSE ed.oldvalue END)
WHEN ep.propname = 'ItemType' THEN (CASE WHEN ed.oldvalue = 'V' THEN 'Verkoop' WHEN ed.oldvalue = 'I' THEN 'Intern' WHEN ed.oldvalue = 'T' THEN 'Tekst' WHEN ed.oldvalue = 'N' THEN 'Vervallen' ELSE ed.oldvalue END)
WHEN ep.propname = 'OrderPolicyCode' THEN (CASE WHEN ed.oldvalue = 'L' THEN 'Klantordergestuurd' WHEN ed.oldvalue = 'F' THEN 'Vast' WHEN ed.oldvalue = 'P' THEN 'Periodiek' WHEN ed.oldvalue = 'R' THEN 'Bestelniveau' ELSE ed.oldvalue END)
WHEN ep.propname = 'status' THEN (CASE WHEN ed.oldvalue = 'P' THEN 'Gepland' WHEN ed.oldvalue = 'D' THEN 'Development' WHEN ed.oldvalue = 'I' THEN 'Piot' WHEN ed.oldvalue = 'C' THEN 'Commercially available' WHEN ed.oldvalue = 'W' THEN 'Withdraw' ELSE ed.oldvalue END)
WHEN ep.propname = 'Type' THEN (CASE WHEN ed.oldvalue = 'S' THEN 'Standaard' WHEN ed.oldvalue = 'P' THEN 'Phantom' WHEN ed.oldvalue = 'B' THEN 'Bulkuitgifte' WHEN ed.oldvalue = 'L' THEN 'Arbeidsuur' WHEN ed.oldvalue = 'M' THEN 'Machine-uur' WHEN ed.oldvalue = 'C' THEN 'Contract' WHEN ed.oldvalue = 'R' THEN 'Redencodes' ELSE ed.oldvalue END)
WHEN ep.propname = 'ValuationMethod' THEN (CASE WHEN ed.oldvalue = 'V' THEN 'Vaste verrekenprijs' WHEN ed.oldvalue = 'C' THEN 'Vaste verrekenprijs (Classic)' WHEN ed.oldvalue = 'G' THEN 'Gemiddelde inkoopprijs' WHEN ed.oldvalue = 'F' THEN 'FIFO' WHEN ed.oldvalue = 'L' THEN 'LIFO' WHEN ed.oldvalue = 'T' THEN 'Werkelijke kostprijsberekening' WHEN ed.oldvalue = 'A' THEN 'Bijgewerkte GIP' ELSE ed.oldvalue END)
ELSE ed.oldvalue
END) AS OValue, (CASE
WHEN ep.propname IN ('IsAssembled','IsBackToBackOrder','IsBatchItem','IsDiscount','IsExplode','IsOutsourcedItem') THEN (CASE ed.newvalue WHEN 1 THEN 'True' ELSE 'False' END)
WHEN ep.propname = 'CommissionMethod' THEN (CASE WHEN ed.newvalue = 'F' THEN 'Vast bedrag' WHEN ed.newvalue = 'M' THEN 'Marge %' WHEN ed.newvalue = 'S' THEN 'Verkoopprijs' ELSE ed.newvalue END)
WHEN ep.propname = 'Condition' THEN (CASE WHEN ed.newvalue = 'A' THEN 'Actief' WHEN ed.newvalue = 'B' THEN 'Geblokkeerd' WHEN ed.newvalue = 'D' THEN 'Vervallen' WHEN ed.newvalue = 'F' THEN 'Toekomstig' WHEN ed.newvalue = 'E' THEN 'Non-actief' ELSE ed.newvalue END)
WHEN ep.propname = 'ItemType' THEN (CASE WHEN ed.newvalue = 'V' THEN 'Verkoop' WHEN ed.newvalue = 'I' THEN 'Intern' WHEN ed.newvalue = 'T' THEN 'Tekst' WHEN ed.newvalue = 'N' THEN 'Vervallen' ELSE ed.newvalue END)
WHEN ep.propname = 'OrderPolicyCode' THEN (CASE WHEN ed.newvalue = 'L' THEN 'Klantordergestuurd' WHEN ed.newvalue = 'F' THEN 'Vast' WHEN ed.newvalue = 'P' THEN 'Periodiek' WHEN ed.newvalue = 'R' THEN 'Bestelniveau' ELSE ed.newvalue END)
WHEN ep.propname = 'status' THEN (CASE WHEN ed.newvalue = 'P' THEN 'Gepland' WHEN ed.newvalue = 'D' THEN 'Development' WHEN ed.newvalue = 'I' THEN 'Piot' WHEN ed.newvalue = 'C' THEN 'Commercially available' WHEN ed.newvalue = 'W' THEN 'Withdraw' ELSE ed.newvalue END)
WHEN ep.propname = 'Type' THEN (CASE WHEN ed.newvalue = 'S' THEN 'Standaard' WHEN ed.newvalue = 'P' THEN 'Phantom' WHEN ed.newvalue = 'B' THEN 'Bulkuitgifte' WHEN ed.newvalue = 'L' THEN 'Arbeidsuur' WHEN ed.newvalue = 'M' THEN 'Machine-uur' WHEN ed.newvalue = 'C' THEN 'Contract' WHEN ed.newvalue = 'R' THEN 'Redencodes' ELSE ed.newvalue END)
WHEN ep.propname = 'ValuationMethod' THEN (CASE WHEN ed.newvalue = 'V' THEN 'Vaste verrekenprijs' WHEN ed.newvalue = 'C' THEN 'Vaste verrekenprijs (Classic)' WHEN ed.newvalue = 'G' THEN 'Gemiddelde inkoopprijs' WHEN ed.newvalue = 'F' THEN 'FIFO' WHEN ed.newvalue = 'L' THEN 'LIFO' WHEN ed.newvalue = 'T' THEN 'Werkelijke kostprijsberekening' WHEN ed.newvalue = 'A' THEN 'Bijgewerkte GIP' ELSE ed.newvalue END)
ELSE ed.newvalue
END) AS NValue, h.fullname AS FullName, ed.created AS Date, Comment FROM ebcdatalog ed
INNER JOIN ebcprops ep ON ed.property = ep.propid
LEFT OUTER JOIN humres h ON ed.creator = h.res_id
LEFT OUTER JOIN ItemAccounts i ON ed.DataKey = CAST(i.ID AS varchar(36))
WHERE ((ed.datakey = 'I4433.DTT.010' AND (ed.component = 0xD2C366F6262D2C4A96B808DC0B1FD785)) OR (i.ItemCode = 'I4433.DTT.010' AND ed.component = 0x7C6B3262291F9C468A3106F0CD71F9B1)) ORDER BY ed.created DESC, ep.PropName
Code:




Hoi..... wellicht nu een beter overzicht? De volgende opties proberen in te voegen, maar dat lukt niet:

ep.CaptionTermID = 5120 Deze 5120 is de code die ik wil zien.

Deze script laat alleen deze artikel zien: I4433.DTT.010 ik zou graag alle artikels zien die beginnen met I

In de bijlage zie je excel hoe de report het verwerkt.excel.jpg
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan