Visit Our UNIX and Linux User Community


SHELL SCRIPT Function Calling Another Function Please Help...


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting SHELL SCRIPT Function Calling Another Function Please Help...
# 1  
Old 04-13-2010
Question SHELL SCRIPT Function Calling Another Function Please Help...

This is my function which is creating three variables based on counter & writing these variable to database by calling another function writeRecord
but only one record is getting wrote in DB.... Please advise ASAP...Smilie

Code:
function InsertFtg
{
FTGSTR=""
echo "Saurabh is GREAT $#"
let count=1
let limit=16
while [[ $count -le 16 ]]
do
        IFS=","
        set ${ABP_HOST_CONFIG}
        while [[ $# -gt 0 ]]
        do
  #         if [ "$count" -eq "$limit" ]; then
                HostVar="HOST_${count}=$1"
                UserVar="ACCOUNT_${count}=$2"
                PassVar="PASSWORD_${count}=$ABP_DEV_PASS"
                echo $HostVar
                echo $UserVar
                echo $PassVar
                read
                let count=count+1
                FTGSTR="$HostVar;$UserVar;$PassVar"
                shift;shift
#       done
                writeRecord ${PREFIX}FTG FTP SYSDATE NULL NULL NULL NULL NULL ${HOST} ${FTGSTR} NULL NULL N ${MARKET} NULL NULL
                echo  ${PREFIX}FTG FTP SYSDATE NULL NULL NULL NULL NULL ${HOST} ${FTGSTR} NULL NULL N ${MARKET} NULL NULL


        done
#done
#       writeRecord ${PREFIX}FTG FTP SYSDATE NULL NULL NULL NULL NULL ${HOST} ${FTGSTR} NULL NULL N ${MARKET} NULL NULL
        unset IFS
done
}


Last edited by Franklin52; 04-13-2010 at 07:52 AM.. Reason: Please use code tags!
# 2  
Old 04-13-2010
If you add a 'set -x' command at the top of your function, it will generate trace output which should show you exactly where things are going wrong. If you can't figure it out from that, paste that output for us. Naturally, if there is sensitive information involved, mask it in a way that protects it without altering the usefulness of the trace.

Code:
function InsertFtg
{
set -x
FTGSTR=""
...

Regards,
Alister

Last edited by alister; 04-13-2010 at 08:28 AM..
# 3  
Old 04-13-2010
Question

Hi Alister this is the WriteRecord Fun....

Code:
function writeRecord
{

cat >> $ins_sql << EOWP
prompt inserting '${1}' '${2}'
INSERT INTO GN1_CONNECT_PARAMS ( CONNECT_CODE, SERVER_TYPE, SYS_CREATION_DATE, SYS_UPDATE_DATE, OPERATOR_ID, APPLICATION_ID, DL_SERVICE_CODE,
 DL_UPDATE_STAMP, HOST_NAME, CONN_PARAMS, PASSWORD, DB_USER_TYPE, DB_USER_XMKT_IND, DB_USER_MKT, DB_COMPLEX_NAME, USER_LEVEL )
VALUES ( '${1}', '${2}', ${3}, ${4}, ${5}, ${6}, ${7}, ${8}, '${9}', '<Parameters>', ${11}, ${12}, '${13}', '${14}', ${15}, ${16});

EOWP

counter=0
IFS=";"
for i in ${10}
do
        cat >> $ins_sql << EOU
UPDATE GN1_CONNECT_PARAMS SET CONN_PARAMS=CONN_PARAMS`convertXml ${i}` WHERE CONNECT_CODE='${1}';

EOU
if [[ ${counter}%10 -eq 0 ]]
then
        print -n ". "
fi
let counter=counter+1
done


cat >> $ins_sql << EOWR
UPDATE GN1_CONNECT_PARAMS SET CONN_PARAMS=CONN_PARAMS||CHR(10)||'</Parameters>' WHERE CONNECT_CODE='${1}';
commit;
EOWR
unset IFS
}



This is O/P after running script with set -x

Code:
Processing, please wait...

. . . . . REF SNAPSHOT B
. . . . J2EE/INFRA SECTION
. . . . . . for _partition in 0001 0002 0003 0004 0099
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AFG GD oracle
AFG GD oracle 1
. . AFG GD oracle 2
. . AFG GD oracle 3
. . AFG GD oracle 4
. . test
AFG GD oracle 5
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + InsertUsq
. . . . + InsertFtg
+ FTGSTR=
+ echo Saurabh is GREAT 0
Saurabh is GREAT 0
+ let count=1
+ [[ 1 -le 16 ]]
+ IFS=,
+ set indibm007 velwrk53
+ [[ 2 -gt 0 ]]
+ HostVar=HOST_1=indibm007
+ UserVar=ACCOUNT_1=velwrk53
+ PassVar=PASSWORD_1=Test11!
+ echo HOST_1=indibm007
HOST_1=indibm007
+ echo ACCOUNT_1=velwrk53
ACCOUNT_1=velwrk53
+ echo PASSWORD_1=Test11!
PASSWORD_1=Test11!
+ read
+ let count=count+1
+ FTGSTR=HOST_1=indibm007;ACCOUNT_1=velwrk53;PASSWORD_1=Test11!
+ writeRecord VELFTG FTP SYSDATE NULL NULL NULL NULL NULL indibm007 HOST_1=indibm007;ACCOUNT_1=velwrk53;PASSWORD_1=Test11! NULL NULL N VEL NULL NULL
. + shift
+ shift
+ [[ 0 -gt 0 ]]
+ echo VELFTG FTP SYSDATE NULL NULL NULL NULL NULL indibm007 HOST_1=indibm007;ACCOUNT_1=velwrk53;PASSWORD_1=Test11! NULL NULL N VEL NULL NULL
VELFTG FTP SYSDATE NULL NULL NULL NULL NULL indibm007 HOST_1=indibm007;ACCOUNT_1=velwrk53;PASSWORD_1=Test11! NULL NULL N VEL NULL NULL
+ [[ 2 -le 16 ]]
+ IFS=,
+ set indibm007 velwrk53
+ [[ 2 -gt 0 ]]
+ HostVar=HOST_2=indibm007
+ UserVar=ACCOUNT_2=velwrk53
+ PassVar=PASSWORD_2=Test11!
+ echo HOST_2=indibm007
HOST_2=indibm007
+ echo ACCOUNT_2=velwrk53
ACCOUNT_2=velwrk53
+ echo PASSWORD_2=Test11!
PASSWORD_2=Test11!
+ read

+ let count=count+1
+ FTGSTR=HOST_2=indibm007;ACCOUNT_2=velwrk53;PASSWORD_2=Test11!
+ writeRecord VELFTG FTP SYSDATE NULL NULL NULL NULL NULL indibm007 HOST_2=indibm007;ACCOUNT_2=velwrk53;PASSWORD_2=Test11! NULL NULL N VEL NULL NULL
. + shift
+ shift
+ [[ 0 -gt 0 ]]
+ echo VELFTG FTP SYSDATE NULL NULL NULL NULL NULL indibm007 HOST_2=indibm007;ACCOUNT_2=velwrk53;PASSWORD_2=Test11! NULL NULL N VEL NULL NULL
VELFTG FTP SYSDATE NULL NULL NULL NULL NULL indibm007 HOST_2=indibm007;ACCOUNT_2=velwrk53;PASSWORD_2=Test11! NULL NULL N VEL NULL NULL
+ [[ 3 -le 16 ]]
+ IFS=,
+ set indibm007 velwrk53
+ [[ 2 -gt 0 ]]
+ HostVar=HOST_3=indibm007
+ UserVar=ACCOUNT_3=velwrk53
+ PassVar=PASSWORD_3=Test11!
+ echo HOST_3=indibm007
HOST_3=indibm007
+ echo ACCOUNT_3=velwrk53
ACCOUNT_3=velwrk53
+ echo PASSWORD_3=Test11!
PASSWORD_3=Test11!
+ read


like this it's coming until counter becomes 16
So Please Advise ASAP.... My work is Stuck......

Last edited by vgersh99; 04-13-2010 at 11:37 AM.. Reason: code tags, please!

Previous Thread | Next Thread
Test Your Knowledge in Computers #842
Difficulty: Medium
HTTP server push (also known as HTTP streaming) is a mechanism for sending unsolicited (asynchronous) data from a web server to a web browser.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Help to Modify File Name in each function before calling another function.

I have a script which does gunzip, zip and untar. Input to the script is file name and file directory (where file is located) I am reading the input parameters as follows: FILENAME=$1 FILEDIR=$2 I have created 3 functions that are as follows: 1) gunzip file 2) unzip file... (2 Replies)
Discussion started by: pinnacle
2 Replies

2. Shell Programming and Scripting

Calling Pl/sql function in shell script to modify csv

I need to 1.Open a csv 2.Process the csv i.e. Modify 2 column in the csv. To modify the column the value needs to be passed to a pl/sql function and the return value should be updated For eg: If column 2 E,then E will be passed in database function which will return Employee. 3. Write a... (5 Replies)
Discussion started by: Chinky23
5 Replies

3. Shell Programming and Scripting

Calling a function in cpp file inside shell script

Hi I need to call a function written in a cpp file with arguments inside the shell script..Can anyone help me how to do this:( (1 Reply)
Discussion started by: rkrish
1 Replies

4. Homework & Coursework Questions

Shell script calling Perl function, sort and find data, write to new files

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: I must write a shell script that calls two external Perl functions--one of which sorts the data in a file, and... (6 Replies)
Discussion started by: kowit010
6 Replies

5. Shell Programming and Scripting

Return a value from called function to the calling function

I have two scripts. script1.sh looks -------------------------------- #!/bin/bash display() { echo "Welcome to Unix" } display ----------------------------- Script2.sh #!/bin/bash sh script1.sh //simply calling script1.sh ------------------------------ (1 Reply)
Discussion started by: mvictorvijayan
1 Replies

6. Shell Programming and Scripting

Calling external function in a shell

hi guys, how r u??? please I need you, help me please. I have a shell, in this shell i have this function and another code lines, this function is getting date one day back. the function is in the same shell (FILE 1) Now I need put this function in another file (FILE 2) and calling... (4 Replies)
Discussion started by: acevallo
4 Replies

7. Shell Programming and Scripting

calling a function in Shell script troubleshooting

Some Code After Some code part is executed the control doesnt go to rvin_doxx_scrt.. and the script exits rvin_doxx_scrt() { Some Code } if (som code) ... (4 Replies)
Discussion started by: ultimatix
4 Replies

8. Shell Programming and Scripting

Calling a C-function froma shell script

Hi, I have searched the forum for the query, But i didnt find an exact answer. I have a script(1.sh) and a c program(sample.c) sample.c contains many function definitions.( run(), find(), add() etc). I want to call functions in sample.c from 1.sh and use the return value in 1.sh... (3 Replies)
Discussion started by: jisha
3 Replies

9. UNIX for Dummies Questions & Answers

calling one function from another shell script

i have a function defined in one ksh (ksh 1) i want to use that function in another ksh (ksh 2) i am using . $<directoryname>/<ksh name> i am calling the function defined in ksh 1 in ksh 2 i want the returnstatus from the above operation but it is not executing the function what i... (1 Reply)
Discussion started by: trichyselva
1 Replies

10. UNIX for Dummies Questions & Answers

calling a c function from shell

Is it possible to call a C function from within a shell script. This C function is part of an API. What do I need to make it work from my shell script. Anybody please help. (4 Replies)
Discussion started by: seshagiri
4 Replies

Featured Tech Videos