Sybase NNTP forums - End Of Life (EOL)

The NNTP forums from Sybase - forums.sybase.com - are now closed.

All new questions should be directed to the appropriate forum at the SAP Community Network (SCN).

Individual products have links to the respective forums on SCN, or you can go to SCN and search for your product in the search box (upper right corner) to find your specific developer center.

BrowseTable: Error 5177

8 posts in Trigger Last posting was on 2011-03-04 16:15:14.0Z
Rich Rohde Posted on 2011-03-02 23:59:17.0Z
From: "Rich Rohde" <rich@richware.net>
Newsgroups: Advantage.Trigger
Subject: BrowseTable: Error 5177
Date: Wed, 2 Mar 2011 15:59:17 -0800
Lines: 9
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 15.4.3502.922
X-MimeOLE: Produced By Microsoft MimeOLE V15.4.3502.922
NNTP-Posting-Host: 67.42.155.1
Message-ID: <4d6ed9d2$1@solutions.advantagedatabase.com>
X-Trace: 2 Mar 2011 15:59:14 -0800, 67.42.155.1
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:467
Article PK: 1136528

Writing my first Trigger and getting the following:

BrowseTable: Error 5177: Trigger execution failed. The container named
"Y:\Delphi\Projects\Conversion Applications\Distribution\AdsTrigs.dll"
failed to load with an error code 126.

The only additional code in AdsTrigs.dll is code to save the parameters to a
text file.

Using TDataSet 8.1 and ARC 10.10. In ARC added

Name: BeforeUpdate
Trigger Type: Before
Event Type: Update
Funciton Name in Contain: MyFunction.

The error occurs when I update the record in Arc. Source:

// Copyright (c) 2003-2007 Extended Systems, Inc.
// Portions Copyright (c) 2005-2009, iAnywhere Solutions, Inc.
// All rights reserved. All unpublished rights reserved.
//
// This source code can be used, modified, or copied by the licensee as long
as
// the modifications (or the new binary resulting from a copy or
modification of
// this source code) are used with Extended Systems' products.
//
// Extended Systems Inc. does not warrant that the operation of this
software
// will meet your requirements or that the operation of the software will be
// uninterrupted, be error free, or that defects in software will be
corrected.
// This software is provided "AS IS" without warranty of any kind. The
entire
// risk as to the quality and performance of this software is with the
purchaser.
// If this software proves defective or inadequate, purchaser assumes the
entire
// cost of servicing or repair. No oral or written information or advice
given
// by an Extended Systems Inc. representative shall create a warranty or in
any
// way increase the scope of this warranty.

library AdsTrigs;

{$INCLUDE versions.inc}

{$IFDEF ADSDELPHI7_OR_NEWER}
{$WARN UNSAFE_TYPE OFF}
{$WARN UNSAFE_CODE OFF}
{$WARN UNSAFE_CAST OFF}
{$ENDIF}

uses
SysUtils,
Classes,
ace,
adscnnct,
adsset,
adsdata,
adstable,
ErrorLog;

// Utility Function Prototype
procedure SetError ( conn : TAdsConnection; code : UNSIGNED32; err :
string ); forward;



// Sample Advantage Trigger function. If you change the name of this
// function, remember to also change the name in the exports list at the
bottom
// of this file.
function MyFunction
(
ulConnectionID : UNSIGNED32; // (I) Unique ID identifying the user causing
this trig
hConnection : ADSHANDLE; // (I) Active ACE connection handle user can
perform
// operations on
pcTriggerName : PAceChar; // (I) Name of the trigger object in the
dictionary
pcTableName : PAceChar; // (I) Name of the base table that caused the
trigger
ulEventType : UNSIGNED32; // (I) Flag with event type (insert, update,
etc.)
ulTriggerType : UNSIGNED32; // (I) Flag with trigger type (before, after,
etc.)
ulRecNo : UNSIGNED32 // (I) Record number of the record being
modified
) : UNSIGNED32;
{$IFDEF WIN32}stdcall;{$ENDIF}{$IFDEF LINUX}cdecl;{$ENDIF} // Do not change
the prototype.
var
oConn : TAdsConnection;

Const
fErrorFile = 'Y:\Delphi\Projects\Conversion
Applications\Distribution\LOG\TriggerLog.Txt';
begin
// Result is currently reserved and not used. Always return zero.
Result := 0;

// Allocate a connection object using an active connection, no need to
open it after this.
oConn := TAdsConnection.CreateWithHandle( nil, hConnection );

// IMPORTANT NOTE: Always use the TAdsTable.AdsConnection or
TAdsQuery.AdsConnection
// property when pointing tables and queries at your connection. Using the
// TAdsTable.Databasename or TAdsQuery.Databasename property is not thread
safe,
// and will cause problems in triggers and AEPs.

try
try
oConn.Name := 'conn';
CreateErrorFile(fErrorFile);
WriteError('ulConnectionID: ' + IntToStr(ulConnectionID) +
' hConnection: ' + IntToStr(hConnection) +
' pcTriggerName: ' + pcTriggerName +
' pcTableName: ' + pcTableName +
' ulEventType: ' + IntToStr(ulEventType) +
' ulTriggerType: ' + IntToStr(ulTriggerType) +
' ulRecNo: ' + intToStr(ulRecNo),fErrorFile);

// YOUR TRIGGER CODE GOES HERE. The code commented out is an example
trigger
// which automatically places a row into the BACKORDERS table after an
order
// is placed if there is not enough inventory to cover the order.


// oQuery := TAdsQuery.Create( nil );
// oQuery.AdsConnection := oConn;
// // See how many items were ordered.
// oQuery.SQL.Text := 'SELECT productID, quantity FROM __new';
// oQuery.Open;
// iProductID := oQuery.Fields[0].AsInteger;
// iQuantity := oQuery.Fields[1].AsInteger;
// // See how many items are in stock.
// oQuery.SQL.Text := 'SELECT quantity FROM inventory WHERE
productID = ' +
// IntToStr( iProductID );
// oQuery.Open;
// // If more items are required, automatically place row in
BACKORDERS table
// if ( iQuantity > oQuery.Fields[0].AsInteger ) then
// oConn.Execute( 'INSERT INTO backorders VALUES( ' +
IntToStr( iProductID ) +
// ', ' + IntToStr( iQuantity -
oQuery.Fields[0].AsInteger ) + ')' );


except
on E : EADSDatabaseError do
SetError( oConn, E.ACEErrorCode, E.message );
on E : Exception do
SetError( oConn, 0, E.message );
end;

finally
oConn.Free;

end;

end;


// Utility function to return an error from a trigger.
procedure SetError
(
conn : TAdsConnection;
code : UNSIGNED32;
err : string
);
begin
// Errors can be returned by placing a row into the __error table.
conn.Execute( 'INSERT INTO __error VALUES( ' + IntToStr( code ) +
', ' + QuotedStr( err ) + ' )' );
end;


{* Do not modify this function, it is used internally by the Advantage
server. *}
function GetInterfaceVersion : UNSIGNED32;
{$IFDEF WIN32}stdcall;{$ENDIF}{$IFDEF LINUX}cdecl;{$ENDIF} // Do not change
the prototype.
begin
Result := 3;
end;


exports
MyFunction;

begin
// Because this dll is used by a multi-threaded application (the Advantage
// server), we must set the Delphi IsMultiThread global variable to TRUE.
IsMultiThread := TRUE;
end.


Lance Schmidt Posted on 2011-03-03 19:08:49.0Z
From: "Lance Schmidt" <LanceSc@ExtendSys.com>
Newsgroups: Advantage.Trigger
References: <4d6ed9d2$1@solutions.advantagedatabase.com>
Subject: Re: BrowseTable: Error 5177
Date: Thu, 3 Mar 2011 12:08:49 -0700
Lines: 228
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5931
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5994
X-RFC2646: Format=Flowed; Response
NNTP-Posting-Host: 10.6.199.121
Message-ID: <4d6fe73f@solutions.advantagedatabase.com>
X-Trace: 3 Mar 2011 11:08:47 -0800, 10.6.199.121
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:468
Article PK: 1136529

Hi Rich,

Error 126 is a windows OS error code saying the DLL could not be found. If
you do a select * from system.triggers, what is the path shown in the
result?

My guess is that the Y:\ is a share that the server doesn't know how to
resolve since it is running in the system context. It would be better to
give a relative path for the DLL from the data dictionary file.

Best Regards,

Lance Schmidt
Advantage R&D

"Rich Rohde" <rich@richware.net> wrote in message
news:4d6ed9d2$1@solutions.advantagedatabase.com...
> Writing my first Trigger and getting the following:
>
> BrowseTable: Error 5177: Trigger execution failed. The container named
> "Y:\Delphi\Projects\Conversion Applications\Distribution\AdsTrigs.dll"
> failed to load with an error code 126.
>
> The only additional code in AdsTrigs.dll is code to save the parameters to
> a text file.
>
> Using TDataSet 8.1 and ARC 10.10. In ARC added
>
> Name: BeforeUpdate
> Trigger Type: Before
> Event Type: Update
> Funciton Name in Contain: MyFunction.
>
> The error occurs when I update the record in Arc. Source:
>
> // Copyright (c) 2003-2007 Extended Systems, Inc.
> // Portions Copyright (c) 2005-2009, iAnywhere Solutions, Inc.
> // All rights reserved. All unpublished rights reserved.
> //
> // This source code can be used, modified, or copied by the licensee as
> long as
> // the modifications (or the new binary resulting from a copy or
> modification of
> // this source code) are used with Extended Systems' products.
> //
> // Extended Systems Inc. does not warrant that the operation of this
> software
> // will meet your requirements or that the operation of the software will
> be
> // uninterrupted, be error free, or that defects in software will be
> corrected.
> // This software is provided "AS IS" without warranty of any kind. The
> entire
> // risk as to the quality and performance of this software is with the
> purchaser.
> // If this software proves defective or inadequate, purchaser assumes the
> entire
> // cost of servicing or repair. No oral or written information or advice
> given
> // by an Extended Systems Inc. representative shall create a warranty or
> in any
> // way increase the scope of this warranty.
>
> library AdsTrigs;
>
> {$INCLUDE versions.inc}
>
> {$IFDEF ADSDELPHI7_OR_NEWER}
> {$WARN UNSAFE_TYPE OFF}
> {$WARN UNSAFE_CODE OFF}
> {$WARN UNSAFE_CAST OFF}
> {$ENDIF}
>
> uses
> SysUtils,
> Classes,
> ace,
> adscnnct,
> adsset,
> adsdata,
> adstable,
> ErrorLog;
>
> // Utility Function Prototype
> procedure SetError ( conn : TAdsConnection; code : UNSIGNED32; err :
> string ); forward;
>
>
>
> // Sample Advantage Trigger function. If you change the name of this
> // function, remember to also change the name in the exports list at the
> bottom
> // of this file.
> function MyFunction
> (
> ulConnectionID : UNSIGNED32; // (I) Unique ID identifying the user
> causing this trig
> hConnection : ADSHANDLE; // (I) Active ACE connection handle user can
> perform
> // operations on
> pcTriggerName : PAceChar; // (I) Name of the trigger object in the
> dictionary
> pcTableName : PAceChar; // (I) Name of the base table that caused
> the trigger
> ulEventType : UNSIGNED32; // (I) Flag with event type (insert, update,
> etc.)
> ulTriggerType : UNSIGNED32; // (I) Flag with trigger type (before,
> after, etc.)
> ulRecNo : UNSIGNED32 // (I) Record number of the record being
> modified
> ) : UNSIGNED32;
> {$IFDEF WIN32}stdcall;{$ENDIF}{$IFDEF LINUX}cdecl;{$ENDIF} // Do not
> change the prototype.
> var
> oConn : TAdsConnection;
>
> Const
> fErrorFile = 'Y:\Delphi\Projects\Conversion
> Applications\Distribution\LOG\TriggerLog.Txt';
> begin
> // Result is currently reserved and not used. Always return zero.
> Result := 0;
>
> // Allocate a connection object using an active connection, no need to
> open it after this.
> oConn := TAdsConnection.CreateWithHandle( nil, hConnection );
>
> // IMPORTANT NOTE: Always use the TAdsTable.AdsConnection or
> TAdsQuery.AdsConnection
> // property when pointing tables and queries at your connection. Using
> the
> // TAdsTable.Databasename or TAdsQuery.Databasename property is not
> thread safe,
> // and will cause problems in triggers and AEPs.
>
> try
> try
> oConn.Name := 'conn';
> CreateErrorFile(fErrorFile);
> WriteError('ulConnectionID: ' + IntToStr(ulConnectionID) +
> ' hConnection: ' + IntToStr(hConnection) +
> ' pcTriggerName: ' + pcTriggerName +
> ' pcTableName: ' + pcTableName +
> ' ulEventType: ' + IntToStr(ulEventType) +
> ' ulTriggerType: ' + IntToStr(ulTriggerType) +
> ' ulRecNo: ' + intToStr(ulRecNo),fErrorFile);
>
> // YOUR TRIGGER CODE GOES HERE. The code commented out is an example
> trigger
> // which automatically places a row into the BACKORDERS table after
> an order
> // is placed if there is not enough inventory to cover the order.
>
>
> // oQuery := TAdsQuery.Create( nil );
> // oQuery.AdsConnection := oConn;
> // // See how many items were ordered.
> // oQuery.SQL.Text := 'SELECT productID, quantity FROM __new';
> // oQuery.Open;
> // iProductID := oQuery.Fields[0].AsInteger;
> // iQuantity := oQuery.Fields[1].AsInteger;
> // // See how many items are in stock.
> // oQuery.SQL.Text := 'SELECT quantity FROM inventory WHERE
> productID = ' +
> // IntToStr( iProductID );
> // oQuery.Open;
> // // If more items are required, automatically place row in
> BACKORDERS table
> // if ( iQuantity > oQuery.Fields[0].AsInteger ) then
> // oConn.Execute( 'INSERT INTO backorders VALUES( ' +
> IntToStr( iProductID ) +
> // ', ' + IntToStr( iQuantity -
> oQuery.Fields[0].AsInteger ) + ')' );
>
>
> except
> on E : EADSDatabaseError do
> SetError( oConn, E.ACEErrorCode, E.message );
> on E : Exception do
> SetError( oConn, 0, E.message );
> end;
>
> finally
> oConn.Free;
>
> end;
>
> end;
>
>
> // Utility function to return an error from a trigger.
> procedure SetError
> (
> conn : TAdsConnection;
> code : UNSIGNED32;
> err : string
> );
> begin
> // Errors can be returned by placing a row into the __error table.
> conn.Execute( 'INSERT INTO __error VALUES( ' + IntToStr( code ) +
> ', ' + QuotedStr( err ) + ' )' );
> end;
>
>
> {* Do not modify this function, it is used internally by the Advantage
> server. *}
> function GetInterfaceVersion : UNSIGNED32;
> {$IFDEF WIN32}stdcall;{$ENDIF}{$IFDEF LINUX}cdecl;{$ENDIF} // Do not
> change the prototype.
> begin
> Result := 3;
> end;
>
>
> exports
> MyFunction;
>
> begin
> // Because this dll is used by a multi-threaded application (the
> Advantage
> // server), we must set the Delphi IsMultiThread global variable to TRUE.
> IsMultiThread := TRUE;
> end.
>
>
>


Rich Rohde Posted on 2011-03-03 21:58:27.0Z
From: "Rich Rohde" <rich@richware.net>
Newsgroups: Advantage.Trigger
References: <4d6ed9d2$1@solutions.advantagedatabase.com> <4d6fe73f@solutions.advantagedatabase.com>
In-Reply-To: <4d6fe73f@solutions.advantagedatabase.com>
Subject: Re: BrowseTable: Error 5177
Date: Thu, 3 Mar 2011 13:58:27 -0800
Lines: 36
MIME-Version: 1.0
Content-Type: multipart/related; boundary="----=_NextPart_000_0042_01CBD9AB.123354A0"; type="multipart/alternative"
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 15.4.3502.922
X-MimeOLE: Produced By Microsoft MimeOLE V15.4.3502.922
NNTP-Posting-Host: 67.42.155.1
Message-ID: <4d700eff@solutions.advantagedatabase.com>
X-Trace: 3 Mar 2011 13:58:23 -0800, 67.42.155.1
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:469
Article PK: 1136538

The Y drive is a local drive and a folder on the drive is shared but not the entire Y drive.
 
 
When I save my container information, the Container Path and Filenam is .\AdsTrigs.dll; (Same path as the ADD).
 
Here’s the results from the SELECT * FROM SYSTEM.TRIGGERS;   
 
Created: 03/03/2011 1:55:42 PM

Item Name Trig_TableName Trig_Event_Type Trig_Trigger_Type Trig_Container_Type Trig_Container Trig_Function_Name Trig_Priority Trig_Options Comment Triggers_Disabled 1 AfterUpdate cbsi_Projects 2 4 1 .\AdsTrigs.dll MyFunction 1 3   False
 
"Lance Schmidt"  wrote in message news:4d6fe73f@solutions.advantagedatabase.com...
 
Hi Rich,
 
Error 126 is a windows OS error code saying the DLL could not be found.  If
you do a select * from system.triggers, what is the path shown in the
result?
 
My guess is that the Y:\ is a share that the server doesn't know how to
resolve since it is running in the system context.  It would be better to
give a relative path for the DLL from the data dictionary file.
 
Best Regards,
 
Lance Schmidt
Advantage R&D
 

image[3][1].png

Joachim Duerr (ADS) Posted on 2011-03-03 22:12:48.0Z
From: "Joachim Duerr (ADS)" <jojo.duerr@gmx.de>
Subject: Re: BrowseTable: Error 5177
Newsgroups: Advantage.Trigger
References: <4d6ed9d2$1@solutions.advantagedatabase.com> <4d6fe73f@solutions.advantagedatabase.com> <4d700eff@solutions.advantagedatabase.com>
Date: Thu, 3 Mar 2011 23:12:48 +0100
User-Agent: XanaNews/1.19.1.269
X-Face: u2p+</,mb|Ah!x!/qxX5q0t:O~.<1&JzwNHYhSqcviY{~&|iDc"U.Je1A.ZeHR`d;;y#R
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
NNTP-Posting-Host: 77.3.123.25
Message-ID: <4d7011e6$1@solutions.advantagedatabase.com>
X-Trace: 3 Mar 2011 14:10:46 -0800, 77.3.123.25
Lines: 11
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:470
Article PK: 1136532


Rich Rohde wrote:

>The Y drive is a local drive and a folder on the drive is shared but
>not the entire Y drive.

do you have a 64Bit ADS running?

--
Joachim Duerr, Advantage Presales
*** NEW *** Advantage Pocket Guide released *** NEW ***
http://pocketguide.jd-engineering.de


Rich Rohde Posted on 2011-03-03 23:26:09.0Z
From: "Rich Rohde" <rich@richware.net>
Newsgroups: Advantage.Trigger
References: <4d6ed9d2$1@solutions.advantagedatabase.com> <4d6fe73f@solutions.advantagedatabase.com> <4d700eff@solutions.advantagedatabase.com> <4d7011e6$1@solutions.advantagedatabase.com>
In-Reply-To: <4d7011e6$1@solutions.advantagedatabase.com>
Subject: Re: BrowseTable: Error 5177
Date: Thu, 3 Mar 2011 15:26:09 -0800
Lines: 2
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="utf-8"; reply-type=original
Content-Transfer-Encoding: 7bit
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 15.4.3502.922
X-MimeOLE: Produced By Microsoft MimeOLE V15.4.3502.922
NNTP-Posting-Host: 67.42.155.1
Message-ID: <4d70238a$1@solutions.advantagedatabase.com>
X-Trace: 3 Mar 2011 15:26:02 -0800, 67.42.155.1
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:472
Article PK: 1136531

Yes I do. BTW, it would be helpful if the service Display name or
Description indicated 64-bit. It's being executed from the 'Program Files'
folder as oppose to the 'Program Files (x86)' folder.

Rich

"Joachim Duerr (ADS)" wrote in message
news:4d7011e6$1@solutions.advantagedatabase.com...

Rich Rohde wrote:

>The Y drive is a local drive and a folder on the drive is shared but
>not the entire Y drive.

do you have a 64Bit ADS running?

--
Joachim Duerr, Advantage Presales
*** NEW *** Advantage Pocket Guide released *** NEW ***
http://pocketguide.jd-engineering.de


Lance Schmidt Posted on 2011-03-04 01:02:41.0Z
From: "Lance Schmidt" <LanceSc@ExtendSys.com>
Newsgroups: Advantage.Trigger
References: <4d6ed9d2$1@solutions.advantagedatabase.com> <4d6fe73f@solutions.advantagedatabase.com> <4d700eff@solutions.advantagedatabase.com> <4d7011e6$1@solutions.advantagedatabase.com> <4d70238a$1@solutions.advantagedatabase.com>
Subject: Re: BrowseTable: Error 5177
Date: Thu, 3 Mar 2011 18:02:41 -0700
Lines: 34
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5931
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5994
X-RFC2646: Format=Flowed; Response
NNTP-Posting-Host: 10.6.199.121
Message-ID: <4d703a2d$1@solutions.advantagedatabase.com>
X-Trace: 3 Mar 2011 17:02:37 -0800, 10.6.199.121
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:473
Article PK: 1136535

Hi Rich,

Delphi only produces 32 bit DLLs and executables, which a 64 bit process can
not load.

Best Regards,

Lance Schmidt
Advantage R&D

"Rich Rohde" <rich@richware.net> wrote in message
news:4d70238a$1@solutions.advantagedatabase.com...
> Yes I do. BTW, it would be helpful if the service Display name or
> Description indicated 64-bit. It's being executed from the 'Program Files'
> folder as oppose to the 'Program Files (x86)' folder.
>
> Rich
>
> "Joachim Duerr (ADS)" wrote in message
> news:4d7011e6$1@solutions.advantagedatabase.com...
>
> Rich Rohde wrote:
>
>>The Y drive is a local drive and a folder on the drive is shared but
>>not the entire Y drive.
>
> do you have a 64Bit ADS running?
>
> --
> Joachim Duerr, Advantage Presales
> *** NEW *** Advantage Pocket Guide released *** NEW ***
> http://pocketguide.jd-engineering.de


Rich Rohde Posted on 2011-03-04 03:34:46.0Z
From: "Rich Rohde" <rich@richware.net>
Newsgroups: Advantage.Trigger
References: <4d6ed9d2$1@solutions.advantagedatabase.com> <4d6fe73f@solutions.advantagedatabase.com> <4d700eff@solutions.advantagedatabase.com> <4d7011e6$1@solutions.advantagedatabase.com> <4d70238a$1@solutions.advantagedatabase.com> <4d703a2d$1@solutions.advantagedatabase.com>
In-Reply-To: <4d703a2d$1@solutions.advantagedatabase.com>
Subject: Re: BrowseTable: Error 5177
Date: Thu, 3 Mar 2011 19:34:46 -0800
Lines: 1
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 15.4.3502.922
X-MimeOLE: Produced By Microsoft MimeOLE V15.4.3502.922
NNTP-Posting-Host: 67.42.155.1
Message-ID: <4d705dd1$1@solutions.advantagedatabase.com>
X-Trace: 3 Mar 2011 19:34:41 -0800, 67.42.155.1
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:475
Article PK: 1136533

Well, I'm still getting an error: Browse Table Error 5177: Trigger execution
failed. I/O error 123.

- Rich

"Lance Schmidt" wrote in message
news:4d703a2d$1@solutions.advantagedatabase.com...

Hi Rich,

Delphi only produces 32 bit DLLs and executables, which a 64 bit process can
not load.

Best Regards,

Lance Schmidt
Advantage R&D

"Rich Rohde" <rich@richware.net> wrote in message
news:4d70238a$1@solutions.advantagedatabase.com...
> Yes I do. BTW, it would be helpful if the service Display name or
> Description indicated 64-bit. It's being executed from the 'Program Files'
> folder as oppose to the 'Program Files (x86)' folder.
>
> Rich
>
> "Joachim Duerr (ADS)" wrote in message
> news:4d7011e6$1@solutions.advantagedatabase.com...
>
> Rich Rohde wrote:
>
>>The Y drive is a local drive and a folder on the drive is shared but
>>not the entire Y drive.
>
> do you have a 64Bit ADS running?
>
> --
> Joachim Duerr, Advantage Presales
> *** NEW *** Advantage Pocket Guide released *** NEW ***
> http://pocketguide.jd-engineering.de


Rich Rohde Posted on 2011-03-04 16:15:14.0Z
From: "Rich Rohde" <rich@richware.net>
Newsgroups: Advantage.Trigger
References: <4d6ed9d2$1@solutions.advantagedatabase.com> <4d6fe73f@solutions.advantagedatabase.com> <4d700eff@solutions.advantagedatabase.com> <4d7011e6$1@solutions.advantagedatabase.com> <4d70238a$1@solutions.advantagedatabase.com> <4d703a2d$1@solutions.advantagedatabase.com> <4d705dd1$1@solutions.advantagedatabase.com>
In-Reply-To: <4d705dd1$1@solutions.advantagedatabase.com>
Subject: Re: BrowseTable: Error 5177
Date: Fri, 4 Mar 2011 08:15:14 -0800
Lines: 1
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response
Content-Transfer-Encoding: 7bit
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 15.4.3502.922
X-MimeOLE: Produced By Microsoft MimeOLE V15.4.3502.922
NNTP-Posting-Host: 67.42.155.1
Message-ID: <4d711008$1@solutions.advantagedatabase.com>
X-Trace: 4 Mar 2011 08:15:04 -0800, 67.42.155.1
Path: solutions.advantagedatabase.com
Xref: solutions.advantagedatabase.com Advantage.Trigger:482
Article PK: 1136543

I have resolved the issue. After Uninstalling Advantage server 10.1 64-bit
and installing Advantage server 10.1 32-bit and making a change to the dll
all is working.

The filename I was using for the Log file was "Y:\Delphi\Projects\Conversion
Applications\Distribution\TriggerLog.Txt", this gave me a 123 error. When I
changed the log filename to ".\TriggerLog.Txt", no errors occurred, but I
couldn't find the log file. After searching, the file was located in the
"E:\Program Files (x86)\Advantage 10.10\Server" (in my case) directory. Is
there some way I can specify my own path where I write data? Can that be
done by changing directory (in my case) to "Y:\Delphi\Projects\Conversion
Applications\Distribution" and then use .\filename? (I'll be trying these on
my own, but I thought I would ask).

Are there any example trigger delphi dll projects that are available, so I
can obtain the before and after data that was changed?

Rich

"Rich Rohde" wrote in message
news:4d705dd1$1@solutions.advantagedatabase.com...

Well, I'm still getting an error: Browse Table Error 5177: Trigger execution
failed. I/O error 123.

- Rich

"Lance Schmidt" wrote in message
news:4d703a2d$1@solutions.advantagedatabase.com...

Hi Rich,

Delphi only produces 32 bit DLLs and executables, which a 64 bit process can
not load.

Best Regards,

Lance Schmidt
Advantage R&D

"Rich Rohde" <rich@richware.net> wrote in message
news:4d70238a$1@solutions.advantagedatabase.com...
> Yes I do. BTW, it would be helpful if the service Display name or
> Description indicated 64-bit. It's being executed from the 'Program Files'
> folder as oppose to the 'Program Files (x86)' folder.
>
> Rich
>
> "Joachim Duerr (ADS)" wrote in message
> news:4d7011e6$1@solutions.advantagedatabase.com...
>
> Rich Rohde wrote:
>
>>The Y drive is a local drive and a folder on the drive is shared but
>>not the entire Y drive.
>
> do you have a 64Bit ADS running?
>
> --
> Joachim Duerr, Advantage Presales
> *** NEW *** Advantage Pocket Guide released *** NEW ***
> http://pocketguide.jd-engineering.de