Skip to main content

Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

Maybe run the program with the (e option and step through with the debugger ?



------------------------------
Bryan Buchanan
Manager
WebbTide Systems Pty Ltd
Morayfield QLD AU
------------------------------

Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

Hi Luis,

I suspect you are asking this as you do not have access to the source code?

If you do have the source code; then one way is to search for the display string 'Sair' as one hopes it occurs near to the line trying to manipulate the file and insert a 'DEBUG' statement, and compile. This will cause the execution to drop to debug; at which point you can use the normal debug commands to set an execution window of a few lines and 'step' through the program until the error occurs at which point view the code.

Another way is to cause the routine to start with a  (D option which will cause the system to drop into debug when such an error occurs; but without source it will be hard to work out what is wrong.

Perhaps others have ways of examining the p-code; but I've never tried.

It could be that the file in question is a 'typical' file; by which I mean the dictionary and data levels are of the same name; in which case you could write a routine to scan down your MD for file  or q-pointers where the dictionary of that target file does not have an entry [either a q-Pointer or file-pointer] of the same name. You may get lucky.

More likely [I suspect] is the file has multiple data levels; perhaps for ageing; and the system is supposed to create and then use an appropriate data level; but cannot find it.

LIST-FILES may shed a clue too.

Unless others know some magic tricks; they key here is availability of source code; but I am certain you knew that before asking the question. So I apologise if my answer is a bit simplistic. Therefore, I suspect you are asking how to get an answer WITHOUT source code.

Not sure if this has been terribly helpful; but ya never know!



------------------------------
David Knight
Senior Software Engineer
H3O Business Technologies Limited
------------------------------


Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

Hi Luis,

Have you got the source code for the program/s you are running ?

If you you can put a  conditional 'DEBUG' statement in the program to check the error.

D3 Reference Manual (rocketsoftware.com)

Have a look at this ?

Regards,

Hitesh



------------------------------
Hitesh Jani
Consultant
Salts Healthcare
Birmingham HI GB
------------------------------

Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

Hi Luiz-

I'm not particularly skilled in using D3. In environments like Universe or Unidata, I typically use the debugger to step through the code. Here is a link to an article about D3's debugger that might be insightful to you.

https://www3.rocketsoftware.com/rocketd3/support/documentation/d3nt/103/refman/index.htm



------------------------------
Eric Santos
CTO
Coppersmith Logistics
El Segundo CA US
------------------------------

Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

Hopefully, you can run this program on-the-fly.  Find the error message, then just before it, put something like:
IF (@LOGNAME = "YOUR LOGIN ID") THEN DEBUG


Then test the variable that lead to causing this error.



------------------------------
[John] [Israel]
[Sr. Programmer Analyst]
[Dayton Superior]
[Miamisburg] [OH] [USA]
------------------------------

Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

Hi Luiz,

I hope you are well?

Looking at the error "The data descriptor (file-name in dictionary) is missing", this tells me that;

  1. Your program is executing a sentence which selects data - using dictionaries.
  2. There is a dictionary in your executed sentence which has a problem.
  3. The dictionary that is not known.

Are you able to edit the program and output the sentence being executed?

For example;

CMD = "SELECT VOC F1 F2 F3"

CRT CMD  ;* output to screen the command being executed.

EXECUTE CMD

If you are not able to edit the program, I would suggerst that you LIST DICT {file-name} then list the file with each I-type dictionary that you find.

If you want to dive into your I-type dictionaries, attribute 17 of the I-type is the date last compiled (I think). It's just a hunch Luiz but I think the problematic dictionary will have failed compilation ... so it won't have attribute 17. Hence, you may find it this way;

LIST DICT {file-name} WITH F17 = "" USING DICT VOC

... assuming that F17 is in the DICT of VOC ... of course.

I hope this wasn't too geeky Luiz? If you get stuck, you're welcome to reach out and we can screenshare to find the dictionary that throws the error.



------------------------------
Andy MacDonald
Director
Rocket Forum Shared Account
QLD, AUSTRALIA
------------------------------

Hello,

I need to track the execution of a program in my system, so I can have the exact diagnostic of its error (See the attachment for the error).


Is there a way so I can check all the executed steps of program, so I can find the 'missing' item shown in the attachment? How can I proceed, please?

Thank you, in advance.

Regards,
Luiz Cássio


------------------------------
Luiz Alves
Analista de Infraestrutura III
Federacao Interfederativa das Unimeds de Minas Gerais
Santa Efigênia Belo Horizonte BR
------------------------------

I would start by ensuring that all the files' DICT portions have data portions of the same name specified within them.  Hopefully you're very familiar with the files your application uses.

That error is saying that your program attempted to open a specific data portion for a file which lacks that data portion.  For example, if you OPEN "ORDERS,PENDING" TO FILE_VARIABLE ELSE ... then the dictionary portion of the file, ORDERS, must also have a data portion, PENDING, specified within it.  If not, you'll get this error.  Any idea what files/data-portions are being opened?  Maybe someone deleted a data portion?



------------------------------
Marcus Rhodes
marcus1@thinqware.com
------------------------------