GeneXus筆記本 獲取當月的最後一天

2022-03-02 12:33:54 字數 2193 閱讀 2340

首先獲取當前日期 然後賦值為當前年月的第一天  然後加乙個月 減去一天 就是當月最後一天 多用於篩選資料時的條件或者區間

我們先隨便拉個頁面  簡單點就好

放入兩個textblock 然後點選event(這是書寫**的地方) 在初始事件中寫如下**

event start

//先用變數儲存時間引數

&date = serverdate() //

獲取的是當前的年月日

&datetime = servernow() //

獲取的是當時的年月日 時分秒

//賦值 當前日期

textblock2.caption = "

當前日期:

"+&datetime.tostring()

//賦值 當前月份最後一天

&date.set(&date.year(),&date.month(),1

) &date = &date.addmonths(1

) &date = &date.adddays(-1

) textblock3.caption = "

當前月份的最後一天:

"+&date.tostring().trim()

endevent

這裡genexus對於時間的獲取是有函式的 所以直接變數接收就好了 然後就是別忘了 右鍵這個變數並新增到variables(這是管理頁面上所有變數的地方) 還有就是 對於時間格式的顯示變數請保持習慣將該變數的屬性設定為長格式 如下

應為如果不設定的話 時間就會變成段格式的  變成19/5/20 這種  當然如果你只是當作中間變數傳值 則不需要考慮  顯示在頁面上的話 就需要多多注意

然後 按照**所示 先取值賦值 加乙個月減乙個天 即可 如圖

這裡請大家注意 我之前遇到的乙個小問題 當時我在寫這段**的時候 發現邏輯是通的 但是獲取到的日期一直都是4月的最後乙個月  然後檢查**同時通過日誌除錯之後發現原因如下

//

將當前日期的值手動賦予新值

&date.set(&date.year(),&date.month(),1

) log.info(&date.tostring)

//這裡我因為疏忽將本該寫成&date = &date.addmonths(1) 寫成了&date.addmonths(1) 我當時認為此方式是可以和上方的**一樣可以直接改變這個&date值的

&date.addmonths(1

)log.info(&date.tostring)

//奇怪的是這裡我沒漏 2333

&date = &date.adddays(-1)

log.info(&date.tostring)

結果日誌除錯結果如下

後買發現加乙個月那行**問題後我又嘗試將減一天的那句**也寫成&date.adddays(-1) 結果卻發現ide提示了錯誤訊息

哦 對了 順便說一下 關於genexus的很常用的乙個找錯誤方式 那就是日誌

我們只需要如下圖開啟對應的屬性 然後找到該專案下的檔案即可找到你當前的運算元據日誌

然後點開專案路徑 進到web資料夾

搜尋就client.log即可

5月30日補充

不好意思 突然發現乙個函式 可以直接獲取當前日期的最後一天

&date.endofmonth().tostring()
大家可以試試

膝上型電腦黑屏 筆記本開機黑屏 筆記本黑屏怎麼辦

筆記本開機黑屏可能不少朋友都遇到過,筆記本黑屏的原因有哪些?如何解決筆記本黑屏?針對這些問題,筆者為大家做些基本的介紹,希望對遇到該故障的本友朋友有所參考!筆記本黑屏,大概可以分為硬體和軟體二個類別。下面分別針對硬體和軟體二方面,介紹一些導致筆記本黑屏的原因,幫助大家找出故障所在。軟體導致的膝上型電...

筆記本的故事

從大四時候開始,我就開始想要一台膝上型電腦,雖然我已經有了乙個台式電腦,它陪我度過了三年的大學生活,那是父母在大一下學期的時候給我買的。當時家裡的經濟條件使我的心情很複雜,但更多的是對父母的感謝!我知道這台筆記本已經不可能再讓父母給我買了,我必須親手去賺到買它的錢!轉眼我已經工作兩年了,現在的我擁有...

筆記本音效卡

但是筆記本音效卡的素質依然是一大瓶頸。與目前pc上動輒5.1 7.1的音效卡 相比,膝上型電腦可就顯得蒼白多了,而且在音質上也遜色不少,這就使得膝上型電腦的娛樂性大打折扣。今天,為大家介紹的是創新 audigy2 zs notebook音效卡,專為膝上型電腦設計,採用pcmcia介面 可提供出色音質...