我采取了不同的方法,我的问题得到了重新解决。
我正在开发一个oracle包,我没有编译问题,但是我遇到了运行错误。我在上面列出的。我有几个存储过程来查找学生ID,课程,总小时数和学期。我已经添加了上面显示的过程,并且我在表单中得到的签名(参数名称)不匹配变量不在过程中:过程中的非缺省变量不在表单中:我是新手包,无法找到不匹配的内容。感谢您查看我的问题 2017年3月13日星期一14:08:46 GMT
无法解析目标程序
zbwrschd.p_stumajr: SIGNATURE (parameter names) MISMATCH
VARIABLES IN FORM NOT IN PROCEDURE:
NON-DEFAULT VARIABLES IN PROCEDURE NOT IN FORM: COLL_IN, MAJR_IN, `PROGRAM_IN, GPA_IN, HRS_IN`
DAD name: PPRD
PROCEDURE : zbwrschd.p_stumajr
URL : http://jsudssbauva01.ad.admin:9004/pls/PPRD/zbwrschd.p_stumajr
PARAMETERS :
===========
ENVIRONMENT:
============
PLSQL_GATEWAY=WebDb
GATEWAY_IVERSION=2
SERVER_SOFTWARE=Oracle-HTTP-Server-11g
GATEWAY_INTERFACE=CGI/1.1
SERVER_PORT=9004
SERVER_NAME=jsudssbauva01.ad.admin
REQUEST_METHOD=GET
QUERY_STRING=
PATH_INFO=/zbwrschd.p_stumajr
SCRIPT_NAME=/pls/PPRD
REMOTE_HOST=
REMOTE_ADDR=172.25.181.53
SERVER_PROTOCOL=HTTP/1.1
REQUEST_PROTOCOL=HTTPS
REMOTE_USER=www_user
ORACLE_SSO_USER=
OSSO_IDLE_TIMEOUT_EXCEEDED=
OSSO_USER_GUID=
HTTP_CONTENT_LENGTH=
HTTP_CONTENT_TYPE=
HTTP_USER_AGENT=Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
HTTP_HOST=ssb-dev.ec.jsums.edu:9004
HTTP_ACCEPT=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
HTTP_ACCEPT_ENCODING=gzip, deflate, sdch, br
HTTP_ACCEPT_LANGUAGE=en-US,en;q=0.8
HTTP_ACCEPT_CHARSET=
HTTP_COOKIE=TESTID=set; SESSID=VjlYUkRZODA1NDAz; _ga=GA1.2.799716495.1477066068; accessibility=false; AWSELB=8B6BA5270CD7C225086EB0AC974CD51DE967250DCB339CB2FAFFB744788FCE910C55F784DFD15C6E7391929DF806A2289EEE108C7A9D6268FA71502B182E2854382ABF5BF7
HTTP_IF_MODIFIED_SINCE=
HTTP_REFERER=https://ssb-dev.ec.jsums.edu:9004/pls/PPRD/twbkwbis.P_GenMenu?name=bmenu.P_FacAdvrMnu
HTTP_SOAPACTION=
HTTP_ORACLE_ECID=
HTTP_ORACLE_CACHE_VERSION=
HTTP_AUTHORIZATION=
WEB_AUTHENT_PREFIX=
DAD_NAME=PPRD
DOC_ACCESS_PATH=docs
DOCUMENT_TABLE=wpg_document
PATH_ALIAS=
REQUEST_CHARSET=AL32UTF8
REQUEST_IANA_CHARSET=UTF-8
SCRIPT_PREFIX=/pls
HTTP_IF_MATCH=
HTTP_CACHE_CONTROL=
SOAP_BODY=
HTTP_X_ORACLE_DEVICE_CLASS=
HTTP_X_ORACLE_DEVICE_ORIENTATION=
HTTP_X_ORACLE_DEVICE_MAXDOCSIZE=
HTTP_X_ORACLE_DEVICE=
HTTP_X_ORACLE_ORIG_ACCEPT=
HTTP_X_ORACLE_ORIG_USER_AGENT=
HTTP_X_ORACLE_USER_LOCALE=
HTTP_X_ORACLE_USER_NAME=
HTTP_X_ORACLE_USER_DISPLAYNAME=
HTTP_X_ORACLE_USER_USERKIND=
HTTP_X_ORACLE_USER_AUTHKIND=
HTTP_X_ORACLE_USER_DEVICEID=
HTTP_X_ORACLE_USER_LOCATION_ADDRESSLINE1=
HTTP_X_ORACLE_USER_LOCATION_ADDRESSLINE2=
HTTP_X_ORACLE_USER_LOCATION_ADDRESSLASTLINE=
HTTP_X_ORACLE_USER_LOCATION_BLOCK=
HTTP_X_ORACLE_USER_LOCATION_CITY=
HTTP_X_ORACLE_USER_LOCATION_COMPANYNAME=
HTTP_X_ORACLE_USER_LOCATION_COUNTY=
HTTP_X_ORACLE_USER_LOCATION_STATE=
HTTP_X_ORACLE_USER_LOCATION_POSTALCODE=
HTTP_X_ORACLE_USER_LOCATION_POSTALCODEEXT=
HTTP_X_ORACLE_USER_LOCATION_COUNTRY=
HTTP_X_ORACLE_USER_LOCATION_TYPE=
HTTP_X_ORACLE_USER_LOCATION_X=
HTTP_X_ORACLE_USER_LOCATION_Y=
HTTP_X_ORACLE_SERVICE_HOME_URL=
HTTP_X_ORACLE_SERVICE_PARENT_URL=
HTTP_X_ORACLE_HOME_URL=
HTTP_X_ORACLE_MODULE_CALLBACK_URL=
HTTP_X_ORACLE_MODULE_CALLBACK_LABEL=
HTTP_X_ORACLE_CACHE_USER=
HTTP_X_ORACLE_CACHE_SUBID=
HTTP_X_ORACLE_CACHE_AUTH=
HTTP_X_ORACLE_CACHE_DEVICE=
HTTP_X_ORACLE_CACHE_LANG=
HTTP_X_ORACLE_CACHE_ENCRYPT=
HTTP_X_ORACLE_ASSERT_USER=
{
CREATE OR REPLACE PACKAGE BANINST1."ZBWRSCHD"
AS
PROCEDURE p_stumajr(coll_in STVCOLL.STVCOLL_DESC%type,
majr_in STVMAJR.STVMAJR_DESC%type,
program_in STVDEGC.STVDEGC_DESC%type,
gpa_in SHRLGPA.SHRLGPA_GPA%type,
hrs_in SHRLGPA.SHRLGPA_HOURS_EARNED%type
);
END zbwrschd;
/
CREATE OR REPLACE PACKAGE BODY BANINST1."ZBWRSCHD"
AS
curr_release VARCHAR2 (10) := '8.3';
dummy_x VARCHAR2 (1) := '';
term stvterm.stvterm_code%TYPE;
trm stvterm.stvterm_code%TYPE;
hold_term stvterm.stvterm_code%TYPE;
term_descr stvterm.stvterm_desc%TYPE;
trm_desc stvterm.stvterm_desc%TYPE;
student_name VARCHAR2 (250);
pidm NUMBER;
msg_level NUMBER := 3;
stud_no_classes NUMBER (8);
row_count INTEGER;
tot_hours NUMBER (8) := 0;
hold_stupidm spriden.spriden_pidm%TYPE;
hold_stupidm_char VARCHAR2 (30) DEFAULT NULL;
msg VARCHAR2 (255);
term_rec stvterm%ROWTYPE;
stud_id spriden.spriden_id%TYPE;
spriden_found BOOLEAN := TRUE;
msg_text VARCHAR2 (1000) := NULL;
PROCEDURE p_stumajr(coll_in IN STVCOLL.STVCOLL_DESC%type,
majr_in IN STVMAJR.STVMAJR_DESC%type,
program_in IN STVDEGC.STVDEGC_DESC%type,
gpa_in IN SHRLGPA.SHRLGPA_GPA%type,
hrs_in IN SHRLGPA.SHRLGPA_HOURS_EARNED%type
)
IS
regmsg VARCHAR2 (50);
pidm_val NUMBER (8);
xyz VARCHAR2 (8) DEFAULT NULL;
-- anchor_string VARCHAR2 (500);
--mohammad
online_class BOOLEAN := TRUE;
onl_class VARCHAR2 (1);
--mohammad
BEGIN
/* Check for valid user */
IF NOT twbkwbis.f_validuser (pidm)
THEN
RETURN;
END IF;
/* If stupidm has not been passed as a param, then try to get */
/* it from the general table, gorwprm */
IF xyz IS NULL
THEN
hold_stupidm_char := twbkwbis.f_getparam (pidm, 'STUPIDM');
/* Otherwise, store the value of the param in GORWPRM */
ELSE
hold_stupidm_char := twbkbssf.f_decode_base64 (xyz);
twbkwbis.p_setparam (pidm, 'STUPIDM', hold_stupidm_char);
END IF;
/* If stupidm came from the table, then change it to a number */
IF hold_stupidm_char IS NOT NULL
THEN
hold_stupidm := TO_NUMBER (hold_stupidm_char, '999999999');
END IF;
/* Make sure a student PIDM has been selected */
IF hold_stupidm IS NULL
THEN
p_facidsel (hold_term, 'zbwrschd.p_shdpage');
RETURN;
END IF;
-- p_common_proc1;
OPEN stuinfo_cur (hold_stupidm);
FETCH stuinfo_cur INTO stud_id;
IF stuinfo_cur%NOTFOUND
THEN
spriden_found := FALSE;
END IF;
CLOSE stuinfo_cur;
trm := hold_term;
OPEN sfrstcr_cntr_cur (hold_stupidm, hold_term);
FETCH sfrstcr_cntr_cur INTO stud_no_classes;
IF sfrstcr_cntr_cur%NOTFOUND
THEN
stud_no_classes := 0;
END IF;
CLOSE sfrstcr_cntr_cur;
row_count := 0;
OPEN get_term_desc_curr (hold_term);
FETCH get_term_desc_curr INTO trm_desc;
CLOSE get_term_desc_curr;
HTP.
p (
'<br>Student ID: <u>'
|| f_getspridenid (hold_stupidm)
|| '</u> <br>Student Name: <u>'
|| f_format_name (hold_stupidm, 'FMIL')
|| '</u><br>Term: <u>'
|| trm_desc
|| '</u><br><br>');
IF stud_no_classes > 0
THEN
twbkfrmt.
p_tableopen (
'DATAWITHBORDER',
cattributes => g$_nls.
get ('BWSKOAC1-0002',
'SQL',
'summary="This is the student''''s'' major"'),
ccaption => g$_nls.
get ('BWSKOAC1-0003', 'SQL', 'Student major:'));
twbkfrmt.p_tablerowopen ();
twbkfrmt.p_tablerowclose;
twbkfrmt.p_tablerowopen ();
twbkfrmt.p_tabledataheader ('College ');
twbkfrmt.p_tabledataheader ('Major ');
twbkfrmt.p_tabledataheader ('Program ');
twbkfrmt.
p_tabledataheader ('GPA ');
twbkfrmt.p_tabledataheader ('Hrs. ');
twbkfrmt.p_tablerowclose;
twbkfrmt.p_tabledata (g$_nls.get ('BWRKSUM1-0909', 'SQL',COLL_in));
twbkfrmt.p_tabledata (majr_in);
twbkfrmt.p_tabledata (program_in);
twbkfrmt.p_tabledata (gpa_in);
twbkfrmt.p_tabledata (hrs_in);
IF row_count > 0
THEN
twbkfrmt.p_tableclose;
END IF;
IF row_count > 0
THEN
OPEN sfrstcr_no_of_hrs_cur (hold_stupidm);
FETCH sfrstcr_no_of_hrs_cur INTO tot_hours;
IF sfrstcr_no_of_hrs_cur%NOTFOUND
THEN
tot_hours := 0.00;
END IF;
CLOSE sfrstcr_no_of_hrs_cur;
HTP.br;
HTP.
bold (
'Total Credit Hours: '
|| tot_hours
|| '');
HTP.br;
END IF;
ELSE
HTP.br;
msg_text := TO_CHAR ('The student has not selected classes yet. ');
twbkfrmt.p_printmessage (msg_text, 2);
msg_text := NULL;
END IF;
END p_stumajr;
/*--------------------------------------------
p_stumajr
---------------------------------------------*/
END zbwrschd;
/
我删除了除了给出错误的程序之外的所有内容。在此先感谢您的帮助。