Diese Seite mit anderen teilen ...

Informationen zum Thema:
WinDev Forum
Beiträge im Thema:
Erster Beitrag:
vor 3 Monaten, 3 Wochen
Letzter Beitrag:
vor 3 Monaten, 2 Wochen
Beteiligte Autoren:
Ola, Stefan Bentvelsen, Jose Antonio Garrido, GuenterP

[WD21] Totally weird analysis problem

Startbeitrag von Ola am 26.04.2017 22:36

Hi all,

I have a totally weird analysis problem:

I have a file with a composite key consisting of 4 numeric fields (Tp+Vuosi+Kk+Rptyyppi), all of which are also separate duplicate keys.
The composite key used allow duplicates, but I changed it to be unique. The file also has a unique autonum key.
Then I modified the file to match the analysis.
This file is used to store the results of monthly reports during a monthly system maintenance batch process, which is managed in its own window.

Now, when I start the program, my file opening process opens it without any problems, and I can use the file, except after doing a complete backup and re-opening the main program as follows:

As the first stage of the monthly maintenance process I have a complete backup process of the system which is done by closing the program and calling a separate "BackUper" program which copies the global data directory and the local program directory to another media.

When the complete backup is done, the BackUper re-opens the main program and re-opens the files with the same file opening process, and NOW WD fires this totally weird error, before it re-opens the maintenance process window:

Error at line 69 of Global Procedure OpenAllFiles process.
HCreationIfNotFound function called.
The description of the logical file stored in the analysis is not compatible with the one stored in the physical file . Unable to access the file.
The item of file is unique key in the file but it is not unique key in the analysis.
The descriptions are not compatible, duplicate errors may occur during the additions.

The weirdest thing here is that in the analysis the key is actually defined as unique! Or at least that's how I defined it and that's how it looks like in the analysis editor! But maybe it internally allows duplicates?

I really could use some hints to fix this problem!

I already tried deleting the composite key from the file description and then re-entering it, and re-modifying the file, but it does not help.
I also tried deleting the file (in test database of course), but when the file was re-created by the file opening process, the same problem exists after full backup.

Best regards



You explained it very well!.

Maybe the problem is that when you say "the BackUper re-opens the main program", it may actually be opening a different version of the program? that's its, a different .exe that the one you are expecting?

You can put an info("this is a test") before the the line generating the error, to be sure.

José Antonio Garrido.

von Jose Antonio Garrido - am 26.04.2017 23:32
Hi Ola,

first of all: fire up the HFSQL Control Center and check that key for correct definition! If it is wrong then just change any other (or the same file) file in the analysis by adding an item, let's say Dummy / String / 1 byte long. Then restructure. After that check in HFSQL Control Center whether the key ist correctly there. Now you can remove the Dummy and restructure again - it just has been there to force the new key characteristics on that key.

von GuenterP - am 27.04.2017 04:39
Hi Ola,

are you sure you've generated the new version of the analysis?

von Stefan Bentvelsen - am 27.04.2017 08:08
Hi guys,

Thank you all for the hints.
Now I have something to work on.

I think José might have a strong "sniff" here, as he also made me realize that there are also other more or less weird symptoms that suggest that the same main program is not really opened by the BackUper.

So first of all I'll add the calling exe's full path to the temp file, where the BackUper gets its parameters.

Best regards

von Ola - am 27.04.2017 09:20
José was right.

The simple reason for this problem was that I was trying to test the program(s) in test mode, and the BackUper program actually called an exe, which was not yet re-compiled, so an old exe was used!

Thanks to all to help me realize this!

Best regards

von Ola - am 03.05.2017 12:23
Zur Information:
MySnip.de hat keinen Einfluss auf die Inhalte der Beiträge. Bitte kontaktieren Sie den Administrator des Forums bei Problemen oder Löschforderungen über die Kontaktseite.
Falls die Kontaktaufnahme mit dem Administrator des Forums fehlschlägt, kontaktieren Sie uns bitte über die in unserem Impressum angegebenen Daten.