Booted from NAV after a deleteall(true)

Very strange behavior:

I set a range on a field, then call deleteall(true) on the record, and I’m kicked out of NAV whether I do this through the client or through code. The records are not deleted.

However, if I pick just a single record and run delete(true), I have no problems. Does anyone have an explanation? Has anyone seen this before?

Thank you,

Girish

I never seem such error behavior. If there isn’t any special SQL trigger directly inserted in table I can’t explain that behavior.

This time I tried looping through the records and delteing them all, and I was kicked out again. I’m guessing there is some corrupt data in the table…

Nothing came up when I did a database test.

I noticed something else. When I try to detele certain records from the table, my session gets killed. Every time I try to detele those records I get kicked out. For other records, I can successfully delete them.

All of the records were part of a data migration. Any idea how I might try to track down this issue?

Feels to me like you’re having some sort of executable problem, which could also explain your other problem. I would try to re-install NAV and apply the service pack you’re on again. Are you even on an installed instance or running the exe’s out of an uninstalled client folder?

That’s a good thought, Daniel.

I’m running through a Terminal Services Client, so I assume that it was installed correctly.

I just checked the Version of the client and I saw:

The client version was 4.0 SP3 but the object version was 3.7 A (!!!)

When I went to check the build number, I found something I hadn’t seen before:

the finsql.exe file had some strange infromation under the version tab. The company says ExpandIT Solutions a/s File Version: 3, 0, 0, 3

Also, there is another file called fin2sql.exe with the normal MS information on the Version tab. It’s build no. is 23305 (the base 4.03 build)

Is this the part of the standard ExpandIT backup solution?

I suffered similar problems, but I thank it was usual… it throws me out of NAV designing properties of a few objects, changing code lines and saving, and many other situations. I thank it happened to everybody, doesn’t it?

I have run into similar problems in table 37. Turned out I had a line number of zero which caused the whole thing (don’t ask how I got a line number of zero, it had to do with a copy document problem).

When you delete a record with a line number of zero it calls the on delete trigger. The on delete trigger has some code that has a deleteall(true). This deleteall(true) calls the on delete trigger again. Which in turn calls it again etc…

Instead of running this loop forever, Navision just shuts down.

  1. What is the table?

  2. What is the line number of the record you are deleteing?

  3. Try debugging and see if you are in a loop in the ondelete trigger

It was table 37. The line no. wasn’t zero, but thanks for the thought – I’ll remember that if it comes up again.

" Unfortunately" - I resolved the problem by refreshing the data from a backup, and reloading the data that had been imported.

A knowledge base article came through about that could be related to this (https://mbs.microsoft.com/knowledgebase/KBDisplay.aspx?scid=kb$en-us$943227)

Mircrosoft released a hotfix to address this problem in the executables.

I have experienced this problem recently. There was a line in the Purchase Line table with “Line No.” = 0.

When you delete it it just kicks you out. I have had the problem in version 5 SP1. You have to clean it up. Make sure that never happens too.