這次項(xiàng)目遇到了一個(gè)導(dǎo)出excel需要對(duì)應(yīng)排列的問題。本來在做這個(gè)項(xiàng)目之前都基本沒做過excel導(dǎo)出的菜雞,這次強(qiáng)行做還是有些忐忑的,加上那個(gè)表的結(jié)構(gòu)比較奇特。
廢話不多說,先介紹表結(jié)構(gòu)吧 是數(shù)據(jù)對(duì)應(yīng)的排序周的表結(jié)構(gòu),一個(gè)列會(huì)有很多的周別信息,如下圖展示:
由于才疏學(xué)淺,并沒有遇到過這種列里面有16*2=32列的這種保存數(shù)據(jù)的方法,一列保存的是周別的信息,另一列保存的是數(shù)量信息。
當(dāng)時(shí)就有想啊,我擦那直接導(dǎo)出來不就好了,直接就對(duì)應(yīng)上了多簡(jiǎn)單!但是轉(zhuǎn)念一想呢,萬一要導(dǎo)出的不止16條呢,那后面的怎么加呢,和同事商量之后,有個(gè)同事的做法是列轉(zhuǎn)行,就是把這個(gè)所有的列都轉(zhuǎn)成行,這樣就能按照屬性(周別和數(shù)量)全部拿到數(shù)據(jù)了,但是呢,但是我比較煩寫存儲(chǔ)過程,想自己想想辦法,加上我這邊的篩選條件是有一個(gè)選擇周別區(qū)間的,所以我自己想了一個(gè)辦法,處理了這類的表。
這個(gè)界面能獲取到的條件除了限定的這一條是屬于誰的(查詢條件的名稱),還有就是起始周和周別和數(shù)量信息,這幾個(gè)重要的信息了,值得一提的是,這里的起始周是這16列數(shù)據(jù)第一列的周別,所以是叫做起始周,這個(gè)字段可以好好的利用。
再重新解釋下導(dǎo)出需求,導(dǎo)出要根據(jù)名稱,導(dǎo)出的起始周和結(jié)束周往后推16這周的信息。這里為什么要推后16周呢,恩,需求書上說的,沒有為什么。而且導(dǎo)出的數(shù)據(jù)要成那種菱形,就是那種那種額 不發(fā)圖表達(dá)不了啊。。。還是發(fā)圖吧。