Ovu stranicu je najbolje pregledavati u modernom internet pregledniku s omogućenim JavaScriptom.

[POSINT] 6. domaća zadaća - 2021/2022

MsBrightside

Za ovu zadaću treba li koristiti naše skladište iz druge zadaće ili onaj northwind što smo dobili za drugu


Doktor0807

MsBrightside Točan odgovor na ovo pitanje je DA 🙂
Koristiš Northwind što smo dobili za drugu kao izvor podataka, a svoje skladište koristiš kao odredište. Za initial load pretpostavljaš da je tvoje skladište prazno, a za inkrementalni load, mislim logično smatraš da postoje podaci u skladištu i da ćeš dodatno upisati samo podatke koji su nanovo nastali u izvoru nakon tvog prošlog punjenja skladišta


hejhoj

je li trebaju skripte iz GenAuditTrailGenRecords za lakši dio zadaće tj. ako radimo samo inicijalno punjenje?


Doktor0807

vdvd ne trebaju

vdvd napravi si novi oleDB source i dohvati sve iz orderDetails i to dohvati pomoću sql-a u kojem odmah grupiraš po orderID i na taj način onda imaš po jedan zapis za svaki orderID iz orderDetails i sad to možeš joinat sa svim ostalim zapisima, pretpostavljam nešto takvog -> Orders left join OrderDetails


hejhoj

i na koji način punimo činjenice u činjeničnoj tablici vezane uz order details tablicu (ukupni popust itd)?


hejhoj

Doktor0807 puno hvala, uspjela sam taj dio! Samo mi izbacuje upozorenje (i na kraju ne napuni uopce) odma na prvom lookup-u, a krenila sam sa vremenskim dimenzijama, i onda nastavi i na svakom sljedecem “no rows will be sent to the no match output”, jel znas mozda u cemu je problem? i jesam li dobro svatila da moramo iz izvora za npr orderDate rastaviti na date i time sa funkcijama pa ih posebno spajat sa svakim lookupom na svoj id? jel mozda u tome greska?


Noname

Na koji nacin spajate Employee sa City tablicom? on u predavanju koristi neki Employee koji vec ima Region dok nasa Northwind ima samo CityID


Doktor0807

Noname običan left join po cityID


hejhoj

vdvd aha to je samo u generalu lookup-a opcija redirect rows to no match output, ali mi sad pada na tom prvom derived columnu di sam odredila pomocne datumske atribute


Doktor0807

vdvd na koji način ti pada, mislim ako ti u Expression unutar Derived columna ne baca error(expression crven) onda znači da ti vjv tipovi podataka ne štimaju
moraš provjerit koji su tipovi na odredištu i ovi koje imaš na ulazu
dođi si ovak mišem iznad columna i provjeri koji sui tak isto za odredišni:


hejhoj

Doktor0807 nazalost sve stima sa tipovima, slazu se😔 al mozda nisam dobre funkcije koristila…


Doktor0807

vdvd evo ako ti slučajno ovo pomogne što iz timestampa vadi datum(string(DT_STR duljine 16)):

(DT_STR,16,1252)((DT_WSTR,4)YEAR(OrderDate) + "-" + (MONTH(OrderDate) < 10 ? (DT_WSTR,2)("0" + (DT_WSTR,1)MONTH(OrderDate)) : (DT_WSTR,2)MONTH(OrderDate)) + "-" + (DAY(OrderDate) < 10 ? ((DT_WSTR,2)("0" + (DT_WSTR,1)DAY(OrderDate))) : ((DT_WSTR,2)DAY(OrderDate))))

i ovo što iz timestampa vadi time(string(DT_STR duljine 16):

(DT_STR,16,1252)(((DATEPART("HH",OrderDate) < 10) ? ((DT_WSTR,2)("0" + (DT_WSTR,1)DATEPART("HH",OrderDate))) : ((DT_WSTR,2)DATEPART("HH",OrderDate))) + ":" + ((DATEPART("mi",OrderDate) < 10) ? ((DT_WSTR,2)("0" + (DT_WSTR,1)DATEPART("mi",OrderDate))) : ((DT_WSTR,2)DATEPART("mi",OrderDate))) + ":" + ((DATEPART("ss",OrderDate) < 10) ? ((DT_WSTR,2)("0" + (DT_WSTR,1)DATEPART("ss",OrderDate))) : ((DT_WSTR,2)DATEPART("ss",OrderDate))))

hejhoj

Doktor0807 spaaaaaasilooo me!!! ❤️ ja sam time isla preko (DT_DBTIMESTAMP) al to ocito ne vraca isti oblik.. HVALA!