Control Flow

  1. 5 years ago

    Joel_Eisenstat

    24 May 2018 User since 2016

    Good morning,
    This seems odd, the var sql is not recognized within the if statement.
    Semantic Error
    Identifier sql not found.

    loadheader();
    if (placementrow != 5 ) {

    var sql = 'SELECT * FROM "Chart_Document" WHERE "patid" = \(self.identifier) AND "type" = \(placementrow)';
    } else { // all documents
    var sql = 'SELECT * FROM "Chart_Document" WHERE "patid" = \(self.identifier)';
    }
    var rs = PostgreSQL1.select(sql);
    if (rs == false) {
    var alert = Alert("WARNING", PostgreSQL1.errorMessage);
    alert.show();
    }

    TableView1.dataSet = rs;
    TableView1.reload(rs);
    TableView1.refresh();

    The same error occurred with var rs until it was taken out of the if statement. I keep looking for my mis code but it looks ok.

    Joel

  2. andrea

    24 May 2018 Administrator User since 2016

    Hi @Joel_Eisenstat , if the sql var is declared in the if or else context is only visible inside that context. You should declare the variable outside the if statement, for example:

    var sql;
    if (placementrow != 5 ) {
       sql = 'SELECT * FROM "Chart_Document" WHERE "patid" = \(self.identifier) AND "type" = \(placementrow)';
    } else { // all documents 
       sql = 'SELECT * FROM "Chart_Document" WHERE "patid" = \(self.identifier)';
    }
  3. Joel_Eisenstat

    24 May 2018 User since 2016

    Thanks Andrea... still learning

or Sign Up to reply!