Ver Mensaje Individual
  #15 (permalink)  
Antiguo 20/01/2012, 12:25
jsmaira
 
Fecha de Ingreso: enero-2012
Mensajes: 29
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: necesito que envie datos dinamicos

ya mira pude traer los datos del id_tabla ahora el problema lo tengo con el $campo_look....

Código PHP:
Ver original
  1. switch ($pIntIdTipoAtt) {
  2.  
  3.             case "13": //LOOKUP
  4.  
  5.  
  6.  
  7.                 unset($Datos);
  8.  
  9.                 $Datos = LocalQueryHandler("DOMO_getLookup", $pIntIdAttLookup, "");
  10.  
  11.  
  12.                 if ($Datos) {
  13.  
  14.                     $filtro = $Datos[0]['filtro'];
  15.  
  16.                     $id_atributo_filtro = $Datos[0]['id_atributo_filtro'];
  17.  
  18.                     $id_domo_atributolookup = $Datos[0]['id_domo_atributolookup'];
  19.  
  20.                     $id_domo_atributo = $Datos[0]['id_domo_atributo'];
  21.  
  22.                     $id_tabla = "id_" . $Datos[0]['nombre_tabla'];
  23.  
  24.                     $id_domo_tabla = $Datos[0]['id_domo_tabla'];
  25.  
  26.                     $campo_look = $Datos[0]['campo_lookup'];  /***de aqui sale el campo look***/
  27.  
  28.                     $tabla = $Datos[0]['nombre_tabla'];
  29.  
  30.                     $id_filtro = $Datos[0]['id_domo_atributo_filtro'];
  31.  
  32.                     $NmAttLookup = $Datos[0]['nombre_atributo'];
  33.  
  34.  
  35.  
  36.  
  37.                 }
  38.  
  39.  
  40.                 if ($filtro == 0) {
  41.  
  42.                     unset($Datos);
  43.  
  44.                     $Datos = LocalQueryHandler("BUILDER_getAttribute", $id_atributo_filtro, "");
  45.  
  46.  
  47.                     $sig_combo = "";
  48.  
  49.                     if ($Datos) {
  50.  
  51.                         $sig_combo = $Datos[0]['nombre_atributo']; // es el siguiente lookup
  52.  
  53.                         $sig_tipo = $Datos[0]['id_domo_tipoatributo'];
  54.  
  55.                         $sig_id = $Datos[0]['id_domo_atributo'];
  56.  
  57.                     }
  58.  
  59.  
  60.  
  61.  
  62.                     //************************ filtro de lookup por builder, RCAZENAV **********************/
  63.  
  64.                     //$filtroLookupForm2 = ' and activo = 1';
  65.  
  66.                     //*************************************************************************************//
  67.  
  68.                     $pasaValor = $tabla . "/" . $id_filtro;
  69.  
  70.                     unset($pParams);
  71.  
  72.                     $pParams = "'".$tabla . "','" . $campo_look . "','0'"; /**aqui llega campo_look**/
  73.  
  74.              
  75.  
  76.                     unset($Datos);
  77.  
  78.                     $Datos = LocalQueryHandler("DOMO_getLookupData", $pParams, "");
  79.  
  80.  
  81.  
  82.                     $i = 0;
  83.  
  84.                     if ($Datos) {
  85.  
  86.  
  87.                         foreach ($Datos as $Result) {          
  88.  
  89.  
  90.                             $param = $Result['id_tabla'] . "/" . $pasaValor;
  91.                             $Value[$i] = $Result;
  92.  
  93. /****el campo_look..trae el nombre un atributo correspondiente a un procedimiento que lo trae dinamicamente..el problema que el procedimiento DOMO_getLookupData solo trae los datos del atributo q fue elegido dinamicamente****/
  94.  
  95. me explico $campo_look trae por ejemplo nombre_pelicula ( que es el nombre que tiene el atributo)....y este $campo_look viene de  otro procedimiento que esta mas arriba DOMO_getLookup...y DOMO_getLookupData solo trae los datos correspondientes al atributo , en este caso de nombre_pelicula..o sea trae como ejemplo (el aro, hulk, x-men etc...)..entonces el procedimiento de DOMO_getLookupData  su salida es fija trae los datos del atributo en particular..pero $campo_look de php es dinamico...la unica forma de q me muestre los datos al hacer correr el programa es dejando la salida de los datos como nombre_pelicula(claro si eso es lo q trae $campo_look)..pero no deberia ya que si trabajo con otros datos supongamos que campo look sea prueba..tendre q cambiar la salida del procedimiento para q se llame prueba y eso no se deberia hacer..mi pregunta va mas por ahy que puedo hacer en este caso cambiar el codigo php? o que se podria hjacer en la salida para no tener que cambiar el nombre a cada rato?
  96.  
  97.                             $Value[$i]['nombre_atributo'] = $campo_look;
  98.  
  99.                             $Value[$i]['PasaValor'] = $param;
  100.  
  101.                             $Value[$i]['SigCombo'] = "\"" . $sig_combo . "\"";
  102.  
  103.  
  104.                             $i++;
  105.  
  106.  
  107.                         }