[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

1040.0. "INV_TIME_SPEC error when using the Iconic MAP" by PHONE::ALLAIN () Wed May 22 1991 12:21

Hi,

I've created an alarm rule for event detection... When I do enable on that rule 
in the Iconic Map, my getevent routine code is executed, but I get an 
INV_TIME_SPEC error status from the mcc_desframe_validate_callargs routine. 

But I dont'get this error status when I run the getevent routines from the FCL.

Does someone have any idea about this?

Thanks

Francois
T.RTitleUserPersonal
Name
DateLines
1040.1notify and getevent are differentTOOK::CALLANDERWed May 22 1991 16:2115
From the iconic map, when you enable a rule there is also a NOTIFY command
running. The NOTIFY command makes subsequent GETEVENT calls to get the
event (ex. rule fired) information from the alarms module. The GETEVENT
generated from the NOTIFY will have a scope of interest that says I
want all events from now, duration=forever. From the FCL my guess is
you are simply entering the GETEVENT command without adding on any time
qualifiers (FOR clause). If you try it from the FCL with the FOR clause
I bet you get the same problem. Remember that GETEVENT is NOT the same as
a SHOW command and that a time spec is supported, where as if you got
the same time spec on a SHOW you don't support it.

Keith if you are out there, what would be the appropriate desframe call to
make to validate a scope on a GETEVENT command?

jill
1040.2PHONE::ALLAINWed May 22 1991 16:4712
You're right jill,

I get the same problem from the FCL when I try to enable the alarm. 

Actually I don't get this problem only when I run my getevent like this:

MCC> getevent cmeagt papa testobj fils bip

....

Francois

1040.3I removed the mcc_desframe_validate_callargsPHONE::ALLAINThu May 23 1991 13:4912
Thanks Jill,

I removed the mcc_desframe_validate_callargs call and it's better, i can get in
my getevent directive and I receive the event...

That's good, but I don't understand why the validate_callargs is wrong... Do you
think, i could have to add a time_spec to my local context, in order to provide
the validate_callargs routine something to compare with?...

Francois.


1040.4validation for a showTOOK::CALLANDERThu May 23 1991 14:104
my understanding of it is that the validation routine you are using is
for validation of call arguments on a SHOW. They take a different time
spec then the GETEVENT. You can modify the validation to not validate the
time and have a separate one for that....any other ideas out there?
1040.5valid_time_specPHONE::ALLAINThu May 23 1991 15:2212
static
	dt_valid_time_spec 
			valid_time_spec = {
				CAV_V_TIME_NOW
				};

This is my validation table for the time_spec, does that help?

For the time beieng I'm gonna put a null pointer for the time spec field 
in the validation table... 

Francois
1040.6time nowTOOK::CALLANDERThu May 23 1991 16:592
time now means ST START=NOW (in terms of the FCL qualifiers), that is NOT
what we pass from notification (NOTIFY xxx FOR START=NOW DURATION=FOREVER).
1040.7The fix is to disable DesFrame Time ValidationNANOVX::ROBERTSKeith Roberts - DECmcc Toolkit TeamThu May 23 1991 19:1026
I just check the Alarms GET EVENT code & the Call Argument Validation Tables.

What I did was to disable (by putting in a 0) validation of time:

static dt__ValidCallArgs       Valid_CallArgs = {
  &valid_verb,
  valid_in_entity,
  valid_attribute,
  0,                          /* Disable Time Validation - Uses FOR clause  */
  &valid_in_q,
  &valid_in_p,                /* EVENTIDLIST Validation done by GET_EVENT code 
  &valid_handle,
  &valid_out_entity,
  &valid_time_stamp,
  &valid_out_p,
  &valid_out_q
};


Currently the DesFrame Validation routines only handle validation of
'time = now' -- but for your get event directive you can process (by
passing the timespec to the event manager) scope-of-interest times.

Putting the 0 in the table is the proper fix (at this time)

/keith
1040.8Ok.PHONE::ALLAINThu May 23 1991 19:315
Thanks Keith,

This is what I did this morning and it worked fine...

Francois