Pergunta

Current select statement:

SELECT * 
FROM vw_svc200_open 
WHERE (CUSTNMBR = '::CUSTNMBR::') 
ORDER BY ::sortcolumn::

This works and all is well. But now I need to modify this select string to apply an extra filter.

SELECT * 
FROM vw_svc200_open 
WHERE 
  CASE 
     WHEN ::CUSTNMBR:: = 'ABC123' 
     THEN (CUSTNMBR =  '::CUSTNMBR::' AND CNTCPRSN = '::CNTCPRSN::') 
     ELSE (CUSTNMBR =  '::CUSTNMBR::') 
  END 
ORDER BY ::sortcolumn::

So basically I need to have my select filter on customer number and if customer number is ABC123 then I also need it to filter on Contact person... The problem with the second SELECT (using the CASE statement) is that it throws an "error near =" on the THEN line.

The ::CUSTNMBR:: and ::CNTCPRSN:: are url string variables (What are those called again?).

Ex.

www.mywebsite.com/mypage.asp?Custnmbr=ABC123

Am I going to have to add some logic to the asp page (i.e. IF/Then) to set a variable, and then pass that variable to the *fp_sQry=* line?

Foi útil?

Solução

I ended up using nested if statements to set the select statement.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top