[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 286
  • Last Modified:

comparing dates

Hi all,

If I have datelista and datelistb
I want to compare those so that those in datelista that are smaller than the last date in datelistb are in my result array. Would @replace achieve this result

datelista:05/06/2006, 07/08/2006, 10/10/2006, 10/12/2006, 01/02/2007, 01/03/2007
datelistb:05/06/2006, 10/10/2006, 01/02/2007
resultlist should display: 07/08/2006, 10/12/2006 ONLY. 01/03/2007 date should not appear in the result list because its date is higher than the last date in datelistb.

I've attempted using @replace from all the examples given before but I seem to get either the entire datelista or the entire datelistb

Does anyone have time to give a hand with this?

Thank you all in advance.
0
varvoura
Asked:
varvoura
  • 5
  • 3
1 Solution
 
varvouraAuthor Commented:
Actually can you use @compare in this scenario?
0
 
Sjef BosmanGroupware ConsultantCommented:
@Compare, hm, maybe, but it's more difficult than with @Transform:
    lastdate:= @Subset(datelistb; -1);
    resultlist:= @Transform(datelista; "x"; @If(x<lastdate; x; @Nothing));
0
 
varvouraAuthor Commented:
Brilliant as usual.

I applied it with a couple of small changes and it worked magic.
Better still, I look it up and in help and I know exactly how it works.

Many thanks,

Varvoura
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
varvouraAuthor Commented:
Sjef,

I have a small problem,
this works fine on existing documents, however on new documents i get the value, comparison operators have to be the same type. The two fields are date fields, however, the datelistb is a computed field which does a lookup to get its value and if it is a new product then its original value is null. Is there a way around this problem.
got too excited too soon.

Thanks
0
 
Sjef BosmanGroupware ConsultantCommented:
An additional check should do wonders, but I suppose you found that out already. If not:

    lastdate:= @Subset(datelistb; -1);
    resultlist:= @If(!@IsTime(lastdate); "";
                        @Transform(datelista; "x"; @If(!@IsTime(x); @Nothing; x<lastdate; x; @Nothing))
                    );
0
 
varvouraAuthor Commented:
I did checking first to make sure that the field value I was comparing to wasn't null, then I tried to convert both value to @texttotime before @Transform. Your method is much easier and shorter.
I seem to use a lot of lengthy solutions, i wish I can abbreviate like you do

Thank you
0
 
Sjef BosmanGroupware ConsultantCommented:
It took me 25 IT-years and a lot of headaches to get these twisted brains. ;)
0
 
varvouraAuthor Commented:
25 years, now that's a lot years. does this mean that I have 20 years before my brain can twist this way????????????????

I have lots of respect for your twisted head though!!!

0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 5
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now