Sveiki,
kilo klausimas del exporto i excel. Seniau naudojom puikia free(CarlosAg Excel Writer) biblioteka. Taciau musu darbdavius netenkina tai, kad
Galimi, tenkinantys sprendimai (pagal prioriteta) :
Gal turite minciu ir norite pasidalinti savo patirtimi.Aciu
Nieko naujo: aš vis dar naudoju tą savo biblioteką (apie kurią rašiau bloge) arba formuoju naudojant Reporting Services. Jeigu Open XML įdomus - yra SDK jam skirtas: http://www.microsoft.com/downloads/details.aspx?FamilyId=C6E744E5-36E9-45F5-8D8C-331DF206E0D0&displaylang=en.
Na kai mums teko daryti export'a i exceli, tai pasinaudojom tuo, kad excelis moka issaugoti savo duomenis xml formatu. Taigi tiesiog excelio sheet'a, kuri naudojom kaip template'a, issaugojom kaip xml'a, tada biski patvarkem pacia xml struktura (bereikalingus stiliu ismetem ir pan). Tada .NET aplikacija atidaro ta xml'a, uzpildo duomenimis, ideda excelio namespace'o tag'a ir atiduoda user'iui kaip xls faila. Taciau tai tinka tik su 2003 ir 2007 ofisu - senesni, kiek atsimenu, neatidaro. Ir beje, kadangi tai xml'as, tai siunciant meilu kartais keikiasi pasto servai
Aciu uz atsakymus abiem, bandysiu pasiziuret tavo spendima Sergejau. SDK jau ziurejau. Nelabai norejau skirti valandas sitam dalykui, bet manau kad teks. Tikiuosi, kad atsiras daugiau nuomoniu apie export i excel. Todel sito klausimo dar neuzdarau :)
manau, kad jei reikės daug dirbt su exceliu ir jo įvairiais formatais ir nebaisu įgaut priklausomybę nuo trečio gamintojo, reikia nusipirkt to trečio gamintojo Excel biblioteką ir dirbt su ja (kokia yra geriausia nežinau). Jei čia epizodinis eksportas ar koks kitas atvejis (pvz jei klientai labiau derinasi prie tavęs o ne tu prie jų :), galima ieškot alternatyvų rašyt savo xml'inį excelio failą (jei nesudetingą lentelę eksportuoji) arba naudot, kaip Sergejus parašė, Open XML SDK. Žodžiu čia jau sąlyginis dalykas, yra iš ko rinktis :)
Kaip supratau :
Cia problemos nera. Visi kazka rasosi patys. Pasidomejau Sergejau rekomenduotu SDK. Ir tai butu manau geriausias sprendimas. Tiesiog paanalizavus CarlosAg biblioteka, pamaciau kad ten dirbama su xml tag'ais ir butu galima padaryti savo implementacija, kuri dirbtu su openXml formatu. Vienas dalykas cia man neduoda ramybes - laikas. Norint padaryti kazka isbaigto ir gero prirektu laiko. Manau su SDK butu patogu dirbti tam tikram (konkreciam) uzdaviniui spresti - importuoti duomenis is db i tam tikra sablona.
Radau du variantus, kuriuos rekomendavo kolegos
http://www.independentsoft.com/spreadsheet/index.html
http://www.aspose.com/categories/.net-components/aspose.cells-for-.net/default.aspx
Labai prasau, jei kas naudojat viena is ju ir esat nusivyle arba patenkinti duokite zinoti.
P.S. Mane suzavejo vienas dalykas. Tarkim turite power point skaidre (demo.pptx) ir norite istraukti is jos visus paveikslelius. Jums reikia pervadinti demo.pptx i demo.pptx.zip. Tada turite zip faila. Tame faile yra media katalogas su visa media, + turit to dokumento sandara - xml failai. Tas pats galioja ir word ir excel....
Nedirbau deja nei su viena. Bet iš pirmo žvilgsnio aspose atrodo solidžiau už tą kitą variantą.
Susidomėjau ir aš dėl tų komponenčių. Aš tai užeinu į www.componentsource.com ir ten brauzinu visokių komponentų, jei reikia (tikriausiai ir tu ten jau buvai:). Tai va, yra ten ir su excel'iu susijusių http://www.componentsource.com/features/spreadsheet/index.html, ten yra nemažas pasirinkimas. Beje independentsoft tame sąraše nebuvo, nežinau ar tai gerai ar blogai :)
Šiaip tai tu gali bet kada parsisiųst demo versiją ir išbandyt ją.
mipi3: tikriausiai ir tu ten jau buvai:)
Gėda, bet nežinojau. Visi komponentai, kuriuos mes naudojame darbe t.y. Telerik. Ačiū už nuorodas, domimės toliau :)
Domantas: P.S. Mane suzavejo vienas dalykas. Tarkim turite power point skaidre (demo.pptx) ir norite istraukti is jos visus paveikslelius. Jums reikia pervadinti demo.pptx i demo.pptx.zip. Tada turite zip faila. Tame faile yra media katalogas su visa media, + turit to dokumento sandara - xml failai. Tas pats galioja ir word ir excel....
įdomus pastebėjimas, nemaniau, kad taip paprasta :)