ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Date and Time Manipulation

Post new topic  Reply to topic
 Date and Time Manipulation « View previous topic :: View next topic » 
Author Message
LH33
PostPosted: Thu Nov 21, 2002 11:25 am    Post subject: Date and Time Manipulation Reply with quote

Master

Joined: 21 Nov 2002
Posts: 200

I have a need to add 48 hours to both a date and a time field that will be passed to me via XML. Can anyone help me with how to do this.

For example - I will be sent a CREATE DATE of say 20021114 I need to add 48 hours to this to form an END BEFORE DATE field.

Thanks!!
Back to top
View user's profile Send private message
kirani
PostPosted: Thu Nov 21, 2002 7:39 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Try something like this,

Code:

DECLARE CURDT DATE;
SET CURDT = CURRENT_DATE;

DECLARE NEWDT DATE;
SET NEWDT = CURDT + INTERVAL '48' HOUR;

_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
LH33
PostPosted: Fri Nov 22, 2002 3:28 am    Post subject: Reply with quote

Master

Joined: 21 Nov 2002
Posts: 200

Kiran,

Thank you!!!
Back to top
View user's profile Send private message
vmurdesh
PostPosted: Wed Nov 19, 2003 4:58 pm    Post subject: INTERVAL function does not work in v2.1 CSD02 ? Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

Hi,

I tried the following ESQL with the INTERVAL function and it does not work in v2.1 CSD02 on NT ?

DECLARE tempCovExpDateSQL DATE;
SET tempCovExpDateSQL = DATE '2003-08-31' + INTERVAL '3' MONTH;

The same statement works when DATE '2003-10-31'

Is this a bug ? Do we need CSD05?

Thanks in advance..
Back to top
View user's profile Send private message
LH33
PostPosted: Thu Nov 20, 2003 6:16 am    Post subject: Reply with quote

Master

Joined: 21 Nov 2002
Posts: 200

VMURDESH,

I used the code Kiran suggested above and it works fine. I am on version 2.1 CSD05 on NT.

Thanks, Lisa
Back to top
View user's profile Send private message
vmurdesh
PostPosted: Thu Nov 20, 2003 10:01 am    Post subject: So is this a bug in CSD02 ? Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

Thanks Lisa....

So is this a bug in CSD02 ? does this mean we would have to do an upgrade for this to CSD05 fron CSD02 ?

Thanks again..
Back to top
View user's profile Send private message
LH33
PostPosted: Thu Nov 20, 2003 10:06 am    Post subject: Reply with quote

Master

Joined: 21 Nov 2002
Posts: 200

VMURDESH,

I'm not sure if the error is in the CSD02 since I always had CSD05. Since we are both on the same version of Control Center, I would upgrade to CSD05.

Thanks, Lisa
Back to top
View user's profile Send private message
kirani
PostPosted: Sat Nov 22, 2003 10:55 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

vmurdesh,

I'd recommend that you open a PMR for this problem.
If you want to upgrade to a higher CSD then please go thru the readme files for CSD3, 4 and 5 before installing it.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
vmurdesh
PostPosted: Tue Nov 25, 2003 12:31 pm    Post subject: proplem persists even with CSD 5 Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

Hi Kiran,

Thanks for your reply.

I installed CSD 5 on NT and tried the foll ESQL in a simple compute node:

DECLARE tempCovExpDateSQL DATE;
DECLARE covExpDateSQL DATE;
SET covExpDateSQL = DATE '2003-08-31';
SET Environment.Variables.MYcovExpDateSQL = covExpDateSQL;
SET tempCovExpDateSQL = DATE '2003-08-31' + INTERVAL '3' MONTH;
SET Environment.Variables.MYtempCovExpDateSQL = tempCovExpDateSQL;


(it works with SET tempCovExpDateSQL = DATE '2003-10-31' + INTERVAL '3' MONTH;)

Thanks.
Vinayak


This is what happens on the red statement on NT.
==================

Trace Contents

==================
(
(0x3000000)MYcovExpDateSQL = DATE '2003-08-31'
)
(
(0x1000000)RecoverableException = (
(0x3000000)File = 'F:\build\S210_P\src\DataFlowEngine\ImbDataFlowNode.cpp'
(0x3000000)Line = 536
(0x3000000)Function = 'ImbDataFlowNode::createExceptionList'
(0x3000000)Type = 'ComIbmComputeNode'
(0x3000000)Name = '10dd2023-f200-0000-0080-ea4d9762a08c'
(0x3000000)Label = 'SyntaxTest.SyntaxTest'
(0x3000000)Text = 'Node throwing exception'
(0x3000000)Catalog = 'WMQIv210'
(0x3000000)Severity = 3
(0x3000000)Number = 2230
(0x1000000)RecoverableException = (
(0x3000000)File = 'F:\build\S210_P\src\DataFlowEngine\ImbRdl\ImbRdlBinaryExpression.cpp'
(0x3000000)Line = 297
(0x3000000)Function = 'SqlBinaryPlus::evaluate'
(0x3000000)Type = 'ComIbmComputeNode'
(0x3000000)Name = '10dd2023-f200-0000-0080-ea4d9762a08c'
(0x3000000)Label = 'SyntaxTest.SyntaxTest'
(0x3000000)Text = 'error evaluating expression'
(0x3000000)Catalog = 'WMQIv210'
(0x3000000)Severity = 3
(0x3000000)Number = 2439
(0x1000000)Insert = (
(0x3000000)Type = 2
(0x3000000)Text = '12'
)
(0x1000000)Insert = (
(0x3000000)Type = 2
(0x3000000)Text = '43'
)
(0x1000000)Insert = (
(0x3000000)Type = 5
(0x3000000)Text = 'DATE '2003-08-31' + INTERVAL INTERVAL '3' MONTH'
)
(0x1000000)RecoverableException = (
(0x3000000)File = 'F:\build\S210_P\src\CommonServices\ImbDateTime.cpp'
(0x3000000)Line = 3026
(0x3000000)Function = 'ImbDate::operator+='
(0x3000000)Type = ''
(0x3000000)Name = ''
(0x3000000)Label = ''
(0x3000000)Text = 'Bad date'
(0x3000000)Catalog = 'WMQIv210'
(0x3000000)Severity = 3
(0x3000000)Number = 2327
(0x1000000)Insert = (
(0x3000000)Type = 2
(0x3000000)Text = '2003'
)
(0x1000000)Insert = (
(0x3000000)Type = 2
(0x3000000)Text = '11'
)
(0x1000000)Insert = (
(0x3000000)Type = 2
(0x3000000)Text = '31'
)
)
)
)
)
Back to top
View user's profile Send private message
mgk
PostPosted: Wed Nov 26, 2003 3:38 am    Post subject: Reply with quote

Padawan

Joined: 31 Jul 2003
Posts: 1642

DATE '2003-08-31' + INTERVAL '3' MONTH;

This will give you the Date '2003-11-31' which is invalid as November only has 30 days. I will check whether we should actually be rounding this, but I don't think so...
_________________
MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions.
Back to top
View user's profile Send private message
vmurdesh
PostPosted: Wed Nov 26, 2003 8:39 am    Post subject: i think thats a bug Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

thanks mgk,

i know it calculates it to 2003-11-31 but when the date is a variable this would imply that you have to check the input date before using the INTERVAL statement which makes it pointless.

I have opened a PMR with IBM for this.

for example:
adding 3 months to '2003-08-31' should be '2003-11-30' ? (it seems to be calculating 2003-11-31 and blowing up)
adding 90 days to '2003-08-31' will be '2003-11-29'..

This is how we would code it in our java or cobol apps.

Thanks.
Vinayak.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Date and Time Manipulation
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.