0

I have a situation where I pass a session user as a parameter to stored procedure and get a receiver value which I want to get in a variable so I can pass that to other function in xsjs file to send email.

I am getting sender from session user and doing concat to get sender email.

I am calling ReadAuditUser stored procedure will see if the appuser(session user) is valid or not

  • if ReadAuditUser stored procedure finds appuser as a valid user then stored procedure will return a single record which will return receiver,

  • if ReadAuditUser stored procedure finds appuser as a invalid user then the stored procedure will return 'null'.

I want to capture that receiver from getReceivername(), like I have capture appuser from getUsername()function.

Please let me know where I am going wrong.

function getUsername() {
    var username = $.session.getUsername();
    return username;
}
var appuser = getUsername();
var str2 = "@abc.com";
var sender_email = appuser.concat(str2);


function getReceivername() {
    var xreceiver = "";
    var conn = $.db.getConnection();
    var query = 'call \"AA\".\"PROCEDURE::ReadAuditUser\"(?)';
    var pstmt = conn.prepareCall(query);
    pstmt.setString(1, appuser);
    pstmt.execute();
    var rs = pstmt.getResultSet();
    if (rs.next()) {
        if (rs.getString(1) === 'null') {
            xreceiver = rs.getString(1);
        } else {
            xreceiver = rs.getString(1);
        }
    }
}
rs.close();
pstmt.close();
conn.close();

var receiver = getReceivername();
var str1 = "@abc.com";
var receiver_email = receiver.concat(str1);
Kilo
  • 9
  • 4
  • `getReceivername` does not `return` anything. – Aluan Haddad Jan 06 '21 at 04:03
  • @AluanHaddad What changes has to be made to getReceivername() function, so it will return either null or receiver name ...?? – Kilo Jan 06 '21 at 05:47
  • You have a function, `getReceivername`, that does not return a receiver name. That is clearly wrong. – Aluan Haddad Jan 06 '21 at 05:49
  • @AluanHaddad I think I need something like below code function runSQL() { var rs = new ActiveXObject("ADODB.Recordset"); var success = true; try { rs.open("EXEC spAddToPar 'foo', 1, 2", conn); } catch (e) { success = false; } rs.close(); return success; } – Kilo Jan 06 '21 at 05:54

1 Answers1

0
function getUsername() {
    var username = $.session.getUsername();
    return username;
}
var appuser = getUsername();
var str2 = "@abc.com";
var sender_email = appuser.concat(str2);


function getReceivername() {
    var xreceiver = "";
    var conn = $.db.getConnection();
    var query = 'call \"AA\".\"PROCEDURE::ReadAuditUser\"(?)';
    var pstmt = conn.prepareCall(query);
    pstmt.setString(1, appuser);
    pstmt.execute();
    var rs = pstmt.getResultSet();
    if (rs.next()) {
        if (rs.getString(1) === 'null') {
            xreceiver = rs.getString(1);
        } else {
            xreceiver = rs.getString(1);
        }
    }
 return xreceiver; /* have to add this code line and it works*/
}
rs.close();
pstmt.close();
conn.close();

var receiver = getReceivername();
var str1 = "@abc.com";
var receiver_email = receiver.concat(str1);
Kilo
  • 9
  • 4