I'm in the process of migrating our PB 12.5.2 applications to PB19. I'm using the SQLNCLI11 provider. Have just run into the following error upon executing a stored procedure.
SQLDBCode 179
SQLErrText:
SQLSTATE = 42000
Microsoft SQL Server Native Client 11.0
Cannot use the OUTPUT option when passing a constant to a stored procedure.
I've reviewed the Community posts but don't see anything helpful.
SQL Server 2016 Stored Procedure declaration:
CREATE PROCEDURE [dbo].[proc_get_default_tax_cd] (
@country_skey int,
@state_skey int,
@county_skey int,
@city varchar(28),
@zip_cd varchar(9),
@tax_cd_out varchar(4) OUTPUT
) AS
PowerBuilder
Instance variables:
string is_in_zip
string is_in_city
string is_in_tax_cd
long il_in_country_skey
long il_in_state_skey
long il_in_county_skey
long il_in_sales_group_skey
PowerScript function:
long ll_sales_group_skey, ll_county_skey
string ls_tax_cd, ls_city
DECLARE lproc_get_tax_cd PROCEDURE FOR dbo.proc_get_default_tax_cd
@country_skey = :il_in_country_skey,
@state_skey = :il_out_state_skey,
@county_skey = :ll_county_skey,
@city = :ls_city,
@zip_cd = :is_in_zip,
@tax_cd_out = :ls_tax_cd OUTPUT
USING SQLCA;
EXECUTE lproc_get_tax_cd;
Sorry about that Linda, but still it's a very good idea to do something like:
ls_tax_cd = space(4)
.. before calling the stored procedure (even though that's not the problem you're trying to solve here).