2013-10-23 53 views
1

我試圖創建一個使用openiso8583 library創建一個ISO 8583的消息

它沒有場17號(Datecapture)的ISO 8583的消息,所以我擴展的類。

Iso8583Finacle msg = new Iso8583Finacle(); 
msg.MessageType = Iso8583.MsgType._0120_AUTH_ADV; 

msg[Iso8583Finacle.Bit._003_PROC_CODE] = "310000"; 
msg[Iso8583Finacle.Bit._004_TRAN_AMOUNT] = "0000000000000000"; 
msg[Iso8583Finacle.Bit._011_SYS_TRACE_AUDIT_NUM] = "380767397537"; 

msg[Iso8583Finacle.Bit._012_LOCAL_TRAN_DATETIME] = "20131003075957"; 
msg[Iso8583Finacle.Bit._017_CAPTURE_DATE] = "20131003"; 

但是,它是拋出一個錯誤。

UnknownFieldException是未處理
場17未知

誰能告訴我如何正確地擴展消息類?

回答

1

你的問題的根源將DE017應該有MMDD格式的長度爲4,你是提供一個YYYYDDMM格式日期字段即使它試圖截斷它也不能通過一些編輯檢查,它不能做月= 20,因爲這是無效的。