Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/04/2014, 00:35
Avatar de Fabu_dina
Fabu_dina
 
Fecha de Ingreso: enero-2004
Mensajes: 425
Antigüedad: 21 años
Puntos: 1
Respuesta: json en un Request

Lo sulucione con la siguiente manera

Código ASP:
Ver original
  1. Dim eje: Set eje = JSON.parse(Request("filters"))                            
  2.  
  3. compa   = eje.groupOp
  4. regi        = CStr(eje.rules.length)-1                      
  5.  
  6. For i=0 to regi
  7.    rec  =   "CStr(eje.rules.get("&i&").field)"
  8.    op   =   "CStr(eje.rules.get("&i&").op)"
  9.    dat  =   "CStr(eje.rules.get("&i&").data)"
  10.  
  11.  
  12.         if i = 0 then
  13.             strWhere = strWhere &" " &compa & " " & eval(rec)
  14. '           strWhere = Replace(strWhere,"OR"," ")
  15.         else
  16.             strWhere = strWhere &" " &compa & " " & eval(rec)
  17.         end if
  18.         Select Case eval(op)
  19.         Case "bw" : 'Begin With
  20.             strFieldData = eval(dat) & "%"
  21.             strWhere = strWhere & " LIKE '" & eval(dat) & "%'"
  22.         Case "eq" : 'Equal
  23.             If(IsNumeric(eval(dat))) Then
  24.                     strWhere = strWhere & " = " & eval(dat)
  25.             Else
  26.                     strWhere = strWhere & " = '" & eval(dat) & "'"
  27.             End If
  28.         Case "ne": 'Not Equal
  29.                 If(IsNumeric(eval(dat))) Then
  30.                     strWhere = strWhere & " <> " & eval(dat)
  31.                 Else
  32.                     strWhere = strWhere & " <> '"& eval(dat) &"'"
  33.                 End If
  34.         Case "lt": 'Less Than
  35.                 If(IsNumeric(eval(dat))) Then
  36.                     strWhere = strWhere & " < " & eval(dat)
  37.                 Else
  38.                     strWhere = strWhere & " < '"& eval(dat) &"'"
  39.                 End If
  40.         Case "le": 'Less Or Equal
  41.                 If(IsNumeric(eval(dat))) Then
  42.                     strWhere = strWhere & " <= " & eval(dat)
  43.                 Else
  44.                     strWhere = strWhere & " <= '"& eval(dat) &"'"
  45.                 End If
  46.         Case "gt": 'Greater Than
  47.                 If(IsNumeric(eval(dat))) Then
  48.                     strWhere = strWhere & " > " & eval(dat)
  49.                 Else
  50.                     strWhere = strWhere & " > '"& eval(dat) &"'"
  51.                 End If
  52.         Case "ge": 'Greater Or Equal
  53.                 If(IsNumeric(eval(dat))) Then
  54.                     strWhere = strWhere & " >= " & eval(dat)
  55.                 Else
  56.                     strWhere = strWhere & " >= '"& eval(dat) &"'"
  57.                 End If
  58.         Case "ew" : 'End With
  59.             strWhere = strWhere & " LIKE '%" & eval(dat) & "'"
  60.         Case "cn" : 'Contains
  61.             strWhere = strWhere & " LIKE '%" & eval(dat) & "%'"
  62.         End Select
  63.    
  64.    'Response.Write(strWhere)
  65.                                
  66. next