CGStarted := FALSE;
ParamStr := NASID;
REPEAT
SepPosition := STRPOS(ParamStr,',');
IF SepPosition > 0 THEN
Parameter := COPYSTR(ParamStr,1,SepPosition - 1)
ELSE
Parameter := COPYSTR(ParamStr,1);
IF Parameter = 'CG' THEN BEGIN
BizTalkNASStartup.RUN;
CGStarted := TRUE;
END;
//> START
IF Parameter = 'YOUR CODE' THEN BEGIN
// Your code
END;
//< START
ParamStr := COPYSTR(ParamStr,SepPosition + 1);
UNTIL SepPosition = 0;
IF NOT CGStarted THEN BEGIN
NASMgt.SetNASID(NASID);
WORKDATE := 0D;
IF NASSetup.GET(NASID) THEN BEGIN
IF NASMgt.GetSendMail THEN BEGIN
MailHandler.RUN;
MailHandler.StartCountDown(2000);
END;
IF NASMgt.GetPerformSynch THEN
MsgDispatcher.RUN;
IF NASMgt.GetPerformRequests THEN
RequestHandler.RUN;
END ELSE
ERROR(
Text018,
NASSetup.TABLECAPTION,
NASID);
END;
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Did you ever experience nassql.exe taking 50% of CPU use?
I run the service with 2 parameter:
GTS: a single istance c.u. that triggers every 10 minutes.
JOBQUEUE: every 1.00 am of the day perform a c.u.
The CPU use with each single parameter is ok, but when i combine them suddendly it raises to 50% and doesn’t go down.
I haven't had that issue.
I would create a logging-table in which I would write what the codeunits are doing.
When starting the job, I would insert a record and COMMIT it and then start the job. At the end of the job I would insert that it finished with a COMMIT. And see what happens.
Another possibility : why don't you put the GTS-logic in the jobqueue? So you don't need its singleinstance anymore to trigger it.
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
You need to give a windows login to the service that has also permission to use NAV (so you need also give permissions to that Windows user in the NAV permissions.
An easy way of testing is login in Windows with that Windows user. Start NAV using Windows authentication. If you can enter NAV, the NAS should be ok.
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
You need to give a windows login to the service that has also permission to use NAV (so you need also give permissions to that Windows user in the NAV permissions.
An easy way of testing is login in Windows with that Windows user. Start NAV using Windows authentication. If you can enter NAV, the NAS should be ok.
Thnx for quick reply.
I can enter into Db thru window login but thru it I can not start the Service. Plz help.
The description for Event ID ( 20005 ) in Source ( BACKUP-CLASSIC ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event:
Is that the complete description?
Seems to be missing something.
Entering in Nav with that user using windows logging is just to be sure that the security in NAV is ok.
The service you need to start using a administrator on the machine.
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Is that the complete description?
Seems to be missing something.
Warring event viewr message is :
The description for Event ID ( 20010 ) in Source ( BACKUP-SQL ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: You must specify which SQL Server and database you want to connect to when you start up the Navision Application Server.
The manual Installation and System Management contains a list of the correct program properties.
Entering in Nav with that user using windows logging is just to be sure that the security in NAV is ok.
The service you need to start using a administrator on the machine.
Go in the properties of the service.
1) In the general tab, the "Path to executable" must point to the nas.exe for native DB and nassql.exe for the SQL DB. Are you using the correct one?
2) in the Log on tab, you need to change the account to an account that has acces in the NAV DB. (Network Service has no access).
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Go in the properties of the service.
1) In the general tab, the "Path to executable" must point to the nas.exe for native DB and nassql.exe for the SQL DB. Are you using the correct one?
"C:\Program Files\Microsoft Business Solutions-Navision\Application Server\nas.exe"
I'm using Native DB.
2) in the Log on tab, you need to change the account to an account that has acces in the NAV DB. (Network Service has no access).
I'm using Domain Administrator ID to login to the DB. DB has a Window user for the same.
No. you are NOT using the domain administrator. You are using the server administrator. That is a completely different thing.
Instead of using ".\administrator", you should use "YourDomain\administrator".
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Thaks Kriki...
Atlast It runs with my window login account.
Can you tell one thing :
how much will it take to execute the function(ID=99) of the Codeuint 1 ?
I mean what is the time limit between two excecution of function(ID=99) of the Codeuint 1 .
Function with ID 99 in codeunit 1 is only lauched once at the start of the NAS. It launches the code in that function and then finishes, never to enter again in that function.
The trick is to let execute a singleinstance codeunit and configure something that can be triggered by outside processes (like a timer event or a MessageQueue event).
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Function with ID 99 in codeunit 1 is only lauched once at the start of the NAS. It launches the code in that function and then finishes, never to enter again in that function.
The trick is to let execute a singleinstance codeunit and configure something that can be triggered by outside processes (like a timer event or a MessageQueue event).
Thank you...
actually I'm want kill those session which are idle for more than 1 hour.
To do so I have created a processonly report on session table.
In this report I have filtered(DataItemTableView) records whose have idle time more than hour. And delete those records on Session - OnAfterGetRecord() trigger.
If you have any example on timer event or a MessageQueue event then kindly share it.
Check this how-to. The last lines have an example.
And for killing idle sessions, there is another how-to : http://www.mibuso.com/howtoinfo.asp?FileID=18 (with inside another example of the timer event).
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
I’m working with client license & see in the Session Tab of the Database Information Window that Current Sessions = 70 & Licensed Sessions = 71
What does it mean?
I have seen that more than 70 users can not work simultaneously in the Database. Then why does database Information window show Licensed Sessions =71 in its Session Tab?
Current sessions: the number of sessions in use at the moment you opened the form
Licensed sessions: the maximum number of sessions you can have open at any moment. This is the limit imposted by your license.
Regards,Alain Krikilion No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Comments
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
thank you for your huge contribute.
Did you ever experience nassql.exe taking 50% of CPU use?
I run the service with 2 parameter:
GTS: a single istance c.u. that triggers every 10 minutes.
JOBQUEUE: every 1.00 am of the day perform a c.u.
The CPU use with each single parameter is ok, but when i combine them suddendly it raises to 50% and doesn’t go down.
Any suggestion?
Check out my NAV blog http://opennav.wordpress.com/
I would create a logging-table in which I would write what the codeunits are doing.
When starting the job, I would insert a record and COMMIT it and then start the job. At the end of the job I would insert that it finished with a COMMIT. And see what happens.
Another possibility : why don't you put the GTS-logic in the jobqueue? So you don't need its singleinstance anymore to trigger it.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
It's what i'm doing...
I'll tell you if it worked!
Check out my NAV blog http://opennav.wordpress.com/
I have a Native Server on Windows Server 2003 & I want to install NAS on that Platform.
Will it work ???
Kindly reply.
You just need to use nas.exe and not nassql.exe and use the same type of connection parameters as for the client.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Thanks for Instant reply.
what is the reason behind it ???
An easy way of testing is login in Windows with that Windows user. Start NAV using Windows authentication. If you can enter NAV, the NAS should be ok.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Thnx for quick reply.
I can enter into Db thru window login but thru it I can not start the Service. Plz help.
The description for Event ID ( 20005 ) in Source ( BACKUP-CLASSIC ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event:
Seems to be missing something.
Entering in Nav with that user using windows logging is just to be sure that the security in NAV is ok.
The service you need to start using a administrator on the machine.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Warring event viewr message is :
The description for Event ID ( 20010 ) in Source ( BACKUP-SQL ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: You must specify which SQL Server and database you want to connect to when you start up the Navision Application Server.
The manual Installation and System Management contains a list of the correct program properties.
Ok.
"Authority\NetworkService Login" has no access to NAV.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
I have installed the NAS thru Domain Administrator but it also unable run the Service.
What can I do ? Plz reply.
1) In the general tab, the "Path to executable" must point to the nas.exe for native DB and nassql.exe for the SQL DB. Are you using the correct one?
2) in the Log on tab, you need to change the account to an account that has acces in the NAV DB. (Network Service has no access).
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
"C:\Program Files\Microsoft Business Solutions-Navision\Application Server\nas.exe"
I'm using Native DB.
I'm using Domain Administrator ID to login to the DB. DB has a Window user for the same.
Instead of using ".\administrator", you should use "YourDomain\administrator".
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Atlast It runs with my window login account.
Can you tell one thing :
how much will it take to execute the function(ID=99) of the Codeuint 1 ?
I mean what is the time limit between two excecution of function(ID=99) of the Codeuint 1 .
The trick is to let execute a singleinstance codeunit and configure something that can be triggered by outside processes (like a timer event or a MessageQueue event).
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Thank you...
actually I'm want kill those session which are idle for more than 1 hour.
To do so I have created a processonly report on session table.
In this report I have filtered(DataItemTableView) records whose have idle time more than hour. And delete those records on Session - OnAfterGetRecord() trigger.
If you have any example on timer event or a MessageQueue event then kindly share it.
And for killing idle sessions, there is another how-to : http://www.mibuso.com/howtoinfo.asp?FileID=18 (with inside another example of the timer event).
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
What does it mean?
I have seen that more than 70 users can not work simultaneously in the Database. Then why does database Information window show Licensed Sessions =71 in its Session Tab?
Is it one session for NAS??
Kindly reply. :-k
But when a count of the connected users is done, they are counted together.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Thank you.
What is the meaning of Current Sessions & Licensed Session ??
Kindly reply.
Licensed sessions: the maximum number of sessions you can have open at any moment. This is the limit imposted by your license.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!