Hi,
I'm trying to get up to snuff on creating apps using openACS and am
running into trouble with typecasting postgresql functions. I was
just trying to do basically the same thing as the add-edit for the
notes application but use a different table with a name and
description fields instead of title and body fields. But I get the
following message when trying to add a new item:
[06/Sep/2002:11:35:31][1147.4101][-conn1-] Notice: Querying '
select template_product__new(
null,
'2537',
'adsf',
'sdf',
'template_product',
now(),
'2537',
'192.168.0.1',
'7210'
);'
[06/Sep/2002:11:35:31][1147.4101][-conn1-] Error: Ns_PgExec: result
status: 7 message: ERROR: Function 'template_product__new(unknown,
unknown, unknown, unknown, unknown, timestamptz, unknown, unknown,
unknown)' does not exist
Unable to identify a function that satisfies the given
argument types
You may need to add explicit typecasts
The actual function is just a tweak of the one in the notes app
(i.e.):
create function template_products__new
(integer,integer,varchar,varchar,varchar,timestamp,integer,varchar,int
eger)
returns integer as '
declare
p_product_id alias for $1; --
default null
p_owner_id alias for $2; --
default null
p_name alias for $3;
p_description alias for $4;
p_object_type alias for $5; --
default ''template_product''
p_creation_date alias for $6;
-- default now()
p_creation_user alias for $7;
-- default null
p_creation_ip alias for $8;
-- default null
p_context_id alias for $9;
-- default null
v_product_id products.product_id%
TYPE;
begin
v_product_id := acs_object__new (
p_product_id,
p_object_type,
p_creation_date,
p_creation_user,
p_creation_ip,
p_context_id
);
insert into template_products
(product_id, owner_id, name, description)
values
(v_product_id, p_owner_id, p_name, p_description);
PERFORM acs_permission__grant_permission(
v_product_id,
p_owner_id,
''admin''
);
I'm sure this is a simple thing but I can't see in the notes app
where an explicit typecast is made so am not sure why it's giving me
the error message. Any help would be appreciated.