[ adopilot @ 07.05.2009. 15:24 ] @
Poštovani !
Ova naša luda poreska uprava je propisala zakon da se Porezne Kartice za 10+ radnika moraju dostavljati u XML formatu
kako oni to ne bi morali prekucavati.
(Hajde i ovo je sa XML-om napradak, Do ove godine su tražili u XLS formatu "koji nonsens" isto da Vlada propiše da moramo koristiti Pelikan olovke i gumice kada se njema obraćamo")

Oni su na WEB stranici dali SAMPLE Xml datoteke koji im treba dostaviti i XSD Shemu te datoteke.

Sada mene interesuje može li SQL na osnovu XML sheme raditi export podataka iz pojedini Querya.

Koji aprouch da uzmem znam da postoji FOR XML u selektu i da se taj isti XML može izbaciti u File sistem
ali me interesuje kako bi mogli napraviti da kod exporta podataka koristi zadanu šemu.
Može li mi neko ako ništa navesti neki opšti hodogram kod ovakvih procedura ako je upošte to moguće.
Ili ako još neko ima da mora ovo napraviti u svojoj firmi neka pomogne da napravimo neki open source koji bi se mogao ugraditi u svaku bazu
Možda na principu Viewa da napravimo Sproc Koji radi export podataka pa onda neka svako sebi napravi View konbinujući svoje podatke a rezultat ioako mora biti Standardizo

Unaprijed zahvalan
[ mmix @ 07.05.2009. 17:07 ] @
Hmm, sem .NET stored procedure ne pada mi nista na pamet. SQL server-side xml formating nije bas tako mocan, moj predlog bi ti bio da napravis XSLT koji ce FOR XML query rezultat da pretaba u format koji tebi treba i koji zadovoljava XSD (sto odmah mozes i da proveris sa validatorom) i da to upakujes kao .NET stored proceduru na server.
[ adopilot @ 08.05.2009. 07:15 ] @
Ako ću več da radim sa .NET procedurom možda je onda bolje da napravim DATA SETOVE i da koristim DataSet.ReadXml, DataSet.ReadXmlSchema
A onda da vraćam podatke nazad u obliku XML-a.
Još jedno pitanje.
Moraju li se ove nesretne .NET procedure baš uvijek kompajlirati kroz komand prompt , ili mogu napraviti jednostavno DLL-ove u VS2008 i takve poslati na Server i ugraditit iste.
Kako bi ih iste mogao pozivati TSQL.om
[ mmix @ 08.05.2009. 08:19 ] @
Malo je offtopic, ali readxmlschema tj pretvaranje xsda u dataset schemu ce ti raditi ako i samo ako je format xsd-a takav da to omogucava. Isto imaj u vidu da to sto je dataset napravljen xsd-om ne znaci da ce exportovani xml biti xsd compliant (koliko se nesto secam, u sxd-u mozes da markiras element 'tabele' kao obavezan ali ce dataset to ignorisati i nece generisati taj tag ako u tabeli nema elemenata). Zato sam i ti predlozio xslt. Jedino sad ako ne znas dobro xslt ali ako znas da baratas xpath-om nauciti xslt je boza.

.NET stored procedure se naravno mogu praviti iz visual studia. Ti kad registrujes assembli u SQL-u ti ne registrujes sors code vec DLL, dal je taj DLL kompajliran u komandnoj liniji ili u visual studiu nevazno je, sta vise ako ti je SQL u lokalu mozes i da napravis SQL projekat i da asembli direktno publikujes i registrujes na SQL serveru kroz meni VS-a. Same kad kreiras projekat, izbaci iz referenci sve one koje ne koristis, SQL podrzava direktno samo nekoliko osnovnih asemblija (bila je tema ovde), ako koristis ostale, cak i kad su deo framework-a, moras da ih registrujes.