Hi Adam,

Thank you for providing the detailed explanation.

I appreciate the proposed approach, and I would like to seek clarification
regarding the *creation_date *and *submitted_on_date *fields. Could you
kindly confirm if both of them should be *Date Time* fields? In
transaction-related scenarios, it is usually considered to use *Date Time*
to capture precise timestamps of events. This approach enables us to
maintain a more accurate record of activities, calculate durations,
intervals, and ensure proper event sequencing.

However, I must admit that I am currently unsure about the specific
scenario. So it would be helpful if you could further clarify if we require
the precise tenant timestamp(submitted_on_date) for the transactions?

Thank you.


On Fri, Jun 30, 2023 at 3:03 PM Ádám Sághy <adamsa...@gmail.com> wrote:

> Hi Muthu,
>
> *The problem*: submitted on date of savings transaction is calculated
> from creation datetime which is tied to system timezone. I think it is
> wrong: it should have been tied to the tenant date / business date!
>
> I see 2 options to handle this:
> • Introduce a new column: *submitted_on_date*  (nullable) AND update this
> based on the *creation_date* so backward compatibility is there and I
> would change at backend side to fetch the value from this new column. After
> adding not-null constraint on the new column.
> • Introduce new column: *submitted_on_date* do not update with any value
> (nullable) and the backend is fetching its value, if it is empty then
> calculate the *submittedOnDate* from the *creation_date*. Again backward
> compatibility is there, but all the queries and all other logic need to be
> enhanced to either take the value from the new column or if its null then
> take it from the creation_date column.
>
> The *submitted_on_date* column shall get the value of the actual business
> date (DateUtils.getBusinessDate()) which would either set the actual date
> based on the tenant timezone or it set the actual business date (if
> business date is enabled).
>
> The 2nd is not so nice, so I* would prefer the 1st one*.
>
> Muthu and fellow community members: what do you think?
>
> Regards,
> Adam
>
> On 26 Jun 2023, at 17:58, James Dailey <jamespdai...@gmail.com> wrote:
>
> Muthu - thanks for bringing this to the list.
>
> I think it is useful to try to search for mention in our history, but in
> this case, it fails.
>
> Looking on the fineract listserv, I find that we have not discussed
> anything about savings accounts and SubmittedOnDate vs CreatedDate. There
> isn't much about this in tickets either.  You may want to search more...but
> my guess is that the reasoning is lost in the pre-Fineract days.  Somewhere
> on the mifos-developer work.
>
> more recently...from 2022, Adam laid out how business date and
> CreatedOnDate ...
> https://lists.apache.org/list?dev@fineract.apache.org:gte=1d:CreatedOnDate
>
> ...from 2017, this ticket was resolved with regard to SubmittedOnDate for
> loans.
>
> https://issues.apache.org/jira/browse/FINERACT-18?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel
> .... also
>
> https://issues.apache.org/jira/browse/FINERACT-1379?jql=project%20%3D%20FINERACT%20AND%20resolution%20%3D%20Unresolved%20AND%20text%20~%20%22submittedOnDate%22%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC
>
>
> So, from my recollection, we initially had a paper driven process, whereby
> a form would be filled out in the field, then brought back to the offices,
> whereby the data would be entered.  The TransactionDate would be the date
> that the payment was made in the field, and the SubmittedDate would be the
> date that the event was recorded in the system.  We "likely" used
> SubmittedDate because we wanted to separate out the concept from the system
> idea of CreatedOnDate.  Thus, this was an early version of "businessDate"
> although only partially designed.
>
>
>
> On Mon, Jun 26, 2023 at 5:52 AM Muthu Kumar
> <mu...@korconnection.com.invalid> wrote:
> Hello community,
>
> I am currently working on a task (
> https://issues.apache.org/jira/browse/FINERACT-1943) related to extending
> the savings transaction search API with a new parameter called
> "submittedOnDate." However, I would appreciate some insights from the
> community regarding the following question:
>
> Can someone please clarify the distinction between transactionDate,
> createdDate, and submittedOnDate?
>
> Here is my understanding so far:
>
> Transaction date: This refers to the specific date when a financial
> transaction occurs, such as making a payment, withdrawal, or deposit.
> Created date: This signifies the date when the transaction information is
> initially entered into the system.
> SubmittedOnDate: Initially, I assumed that this was the same as the
> created date. However, I would like to hear from the community on this
> matter. If you could help me comprehend how the community utilizes the
> submittedOnDate field, it would be greatly appreciated.
>
> Please feel free to correct me if my understanding is wrong.
>
> Thanks.
>
> Regards,
> Muthu
>
>
>

Reply via email to