Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Como mostrar un mismo registro varias veces

Estas en el tema de Como mostrar un mismo registro varias veces en el foro de Bases de Datos General en Foros del Web. Hola quiero que me ayuden porfavor..Tengo un sistema de inventario y facturacion, en el mis sistema genera codigo de barras.. todo bien hasta aca.. Pero ...
  #1 (permalink)  
Antiguo 18/03/2010, 22:39
 
Fecha de Ingreso: noviembre-2008
Mensajes: 110
Antigüedad: 15 años, 5 meses
Puntos: 2
Como mostrar un mismo registro varias veces

Hola quiero que me ayuden porfavor..Tengo un sistema de inventario y facturacion, en el mis sistema genera codigo de barras.. todo bien hasta aca..

Pero me genera un codigo por articulo, porque la consulta del inventario mustra todos los articulos agregados...

Yo quiero que si un articulo hay en existencia 20 articulos.. me genere 20 codigos de barra del mismo articulo y si el siguiente solo hay un articulo que solo me genere 1 y asi hasta que me muestre todo mi inventario..

se que la clave esta en la consulta como puedo hacer..porfavor ayudenme..
  #2 (permalink)  
Antiguo 19/03/2010, 03:31
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Como mostrar un mismo registro varias veces

En que entorno estamos trabajando, motor de bbdd y que usas para generar los codigos de barras y para listarlos?

Quim
  #3 (permalink)  
Antiguo 19/03/2010, 09:54
 
Fecha de Ingreso: noviembre-2008
Mensajes: 110
Antigüedad: 15 años, 5 meses
Puntos: 2
Respuesta: Como mostrar un mismo registro varias veces

Estoy trabajando en php , pero quiero aclarar que lo de generar codigos de barra no es el problema.. el problema esque quiero listar mi base de datos a mostrar asi eje:

Nombre: blusa a , cantidad:5, blusa b , cantidad: 2

que me aparesca en mi consulta a mostrar.. o reporte...

blusa a, blusa a, blusa a, blusa a, blusa a, blusa b, blusa b.

osea que me muestre varias veces el mismo producto segun existencia..
  #4 (permalink)  
Antiguo 19/03/2010, 22:29
 
Fecha de Ingreso: enero-2010
Ubicación: SJM Lima - Peru
Mensajes: 55
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Como mostrar un mismo registro varias veces

Cita:
Iniciado por kristhian23 Ver Mensaje
Estoy trabajando en php , pero quiero aclarar que lo de generar codigos de barra no es el problema.. el problema esque quiero listar mi base de datos a mostrar asi eje:

Nombre: blusa a , cantidad:5, blusa b , cantidad: 2

que me aparesca en mi consulta a mostrar.. o reporte...

blusa a, blusa a, blusa a, blusa a, blusa a, blusa b, blusa b.

osea que me muestre varias veces el mismo producto segun existencia..
Hola kristhian23
si solo quieres visualizar creo q esto te puede servir pero si quieres imprimir deberias imprimir el codigo de barras y tambien indicar la cantidad de copias segun el modlo de tu impresora barcode.


Código SQL:
Ver original
  1. CREATE PROCEDURE sp_registros1
  2.     AS
  3.     DECLARE @contador INT
  4.     DECLARE @Registros TABLE(OrderId INT, campo VARCHAR(50))
  5.     DECLARE @cantidad AS INT
  6.     DECLARE @articulo AS VARCHAR(50)
  7.     DECLARE CursorMain cursor FOR SELECT articulo, cantidad FROM articulos
  8.     OPEN CursorMain
  9.     fetch NEXT FROM CursorMain INTO @articulo, @cantidad
  10.     while @@fetch_status = 0
  11.       BEGIN
  12.           SET @CONTADOR=1
  13.           While @CONTADOR<=@cantidad        
  14.              BEGIN       
  15.                 INSERT INTO @registros VALUES(@contador,@articulo)
  16.                 SET @CONTADOR=@CONTADOR+1
  17.              END
  18.           fetch NEXT FROM CursorMain    INTO @articulo, @cantidad
  19.       END
  20.     close CursorMain
  21.     deallocate CursorMain
  22.     SELECT * FROM @registros

www.bitxense.com.pe | Soluciones Informaticas S.A.C. - [email protected]
Cualquier duda soy Jhon Bautista Palomino aqui esta mi correo MSN [email protected] Lima-Peru
.
  #5 (permalink)  
Antiguo 20/03/2010, 14:29
 
Fecha de Ingreso: noviembre-2008
Mensajes: 110
Antigüedad: 15 años, 5 meses
Puntos: 2
Respuesta: Como mostrar un mismo registro varias veces

Hola gracias por contestar.. vea pondre mi codigo para que tengan una idea..

<?php session_start();
include ("../settings.php");
include ("../language/$cfg_language");
include ("../classes/db_functions.php");
include ("../classes/display.php");
include ("../classes/security_functions.php");

$lang=new language();
$dbf=new db_functions($cfg_server,$cfg_username,$cfg_passwo rd,$cfg_database,$cfg_tableprefix,$cfg_theme,$lang );
$sec=new security_functions($dbf,'Admin',$lang);
$display=new display($dbf->conn,$cfg_theme,$cfg_currency_symbol,$lang);
if(isset($_GET['generateWith']))
{
$generateWith=$_GET['generateWith'];
}
else
{
$generateWith='description';
}

if(!$sec->isLoggedIn())
{
header ("location: ../login.php");
exit();
}


$items_table=$cfg_tableprefix.'items';
$result=mysql_query("SELECT * FROM $items_table quantity where quantity>='1' ORDER by id DESC",$dbf->conn);

echo '<table border=0 width=85% align=center cellspacing=8 cellpadding=0>

<tr>';
$counter=0;
while($row=mysql_fetch_assoc($result))
{
if($counter%3==0)
{
echo '</tr><tr>';
}

$unit_price_value=$row['unit_price'];
$nombre=$row['item_name'];


if(($unit_price_value)<100)
{
$pre=number_format($unit_price_value*(1+($cfg_defa ult_tax_rate/100)),2,'.', '');
}else{
$per=number_format($unit_price_value*($cfg_default _percepcion_rate/100),2,'.', '');
$iva=number_format($unit_price_value*($cfg_default _tax_rate/100),2,'.', '');
$pre=number_format($unit_price_value+$iva+$per,2,' .', '');
}

echo "<td align='center' style='border:#000000 1px solid;'><div><font face='Verdana' size='1.8' color='000000'><b>$cfg_nombre_empresa</b><br>$nombre</div><img src='../classes/barcode.php?barcode=$row[$generateWith]&width=256&text=*$row[description]*'><br>Precio:</font><font face='Verdana' size='1.8' color='red'>$$pre</font></div></td>";

$counter++;
}
echo '</tr></table>';
$dbf->closeDBlink();
?>

Este codigo me funciona muy bien.. para aclara mi pregunta y para no confunfirlos mas.. dejemos de lado el codigo de barra.. osea ese no es el promea.. mi problema es que la consulta que yo quiero que este codigo haga esque ..

si hay 6 articulos en existencia de un articulo.. me lo muestre 6 veces y luego siga con el siguiente articulo.. como ven estoy trabajando en php.. gracias T3rryMan por tu respuesta pero creo que no es lo que estoy buscando... o replanteamela de otra forma porfavor.. me esta comiendo el tiempo y no doy con la respuesta..
  #6 (permalink)  
Antiguo 23/03/2010, 03:36
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Como mostrar un mismo registro varias veces

Creo que la solucion no es de este foro, ya que la solucion más facil es php

Espero que no se moleste nadie.

Código PHP:
Ver original
  1. <?php session_start();
  2. include ("../settings.php");
  3. include ("../language/$cfg_language");
  4. include ("../classes/db_functions.php");
  5. include ("../classes/display.php");
  6. include ("../classes/security_functions.php");
  7.  
  8. $lang=new language();
  9. $dbf=new db_functions($cfg_server,$cfg_username,$cfg_passwo rd,$cfg_database,$cfg_tableprefix,$cfg_theme,$lang );
  10. $sec=new security_functions($dbf,'Admin',$lang);
  11. $display=new display($dbf->conn,$cfg_theme,$cfg_currency_symbol,$lang);
  12. if(isset($_GET['generateWith'])){
  13.     $generateWith=$_GET['generateWith'];
  14. }else{
  15.     $generateWith='description';
  16. }
  17.  
  18. if(!$sec->isLoggedIn()){
  19.     header ("location: ../login.php");
  20.     exit();
  21. }
  22.  
  23. $items_table=$cfg_tableprefix.'items';
  24.  
  25. // Supongo que uno de los campos sera "quantity"
  26. $result=mysql_query("SELECT * FROM $items_table quantity where quantity>='1' ORDER by id DESC",$dbf->conn);
  27.  
  28. echo '<table border=0 width=85% align=center cellspacing=8 cellpadding=0><tr>';
  29. $counter=0;
  30. while($row=mysql_fetch_assoc($result)){
  31.  
  32. //Leo quantity
  33.     $quantity=$row['quantity'];
  34.  
  35. //Inicio del bucle for de 0 (cero) a quantity
  36.     for ($i=0;$i<$quantity;$i++){
  37.     if($counter%3==0){
  38.         echo '</tr><tr>';
  39.     }
  40.     $unit_price_value=$row['unit_price'];
  41.     $nombre=$row['item_name'];
  42.     if(($unit_price_value)<100){
  43.         $pre=number_format($unit_price_value*(1+($cfg_defa ult_tax_rate/100)),2,'.', '');
  44.     }else{
  45.         $per=number_format($unit_price_value*($cfg_default _percepcion_rate/100),2,'.', '');
  46.         $iva=number_format($unit_price_value*($cfg_default _tax_rate/100),2,'.', '');
  47.         $pre=number_format($unit_price_value+$iva+$per,2,' .', '');
  48.     }
  49.     echo "<td align='center' style='border:#000000 1px solid;'><div><font face='Verdana' size='1.8' color='000000'><b>$cfg_nombre_empresa</b><br>$nombre</div><img src='../classes/barcode.php?barcode=$row[$generateWith]&width=256&text=*$row[description]*'><br>Precio:</font><font face='Verdana' size='1.8' color='red'>$$pre</font></div></td>";
  50.     $counter++;
  51.     }//Cierro el bucle For
  52. }//Cierras el bucle while
  53. echo '</tr></table>';
  54. $dbf->closeDBlink();
  55. ?>

He agregado un bucle for dentro de tu bucle while

La idea es leer la quantity y antes de ir al siguiente registro repetir las operaciones sobre el actual tantas veces como indique quantity.

No lo he probado pero la idea seria esta.

Para ser estrictos, si counter no termina en %3==0 quizas tienes que agregar celdas vacías a la tabla antes de cerrarla.

Quim
  #7 (permalink)  
Antiguo 23/03/2010, 12:36
 
Fecha de Ingreso: noviembre-2008
Mensajes: 110
Antigüedad: 15 años, 5 meses
Puntos: 2
Respuesta: Como mostrar un mismo registro varias veces

Hola gracias por la respuesta tenias razon asi es...

for($i=0;$i < $cantidad;$i++){

//Y aquí haces lo que necesites
}

gracias por contestar.. y disculpe si coloque mal mi tema saludos....
  #8 (permalink)  
Antiguo 28/05/2010, 07:03
 
Fecha de Ingreso: abril-2010
Mensajes: 50
Antigüedad: 14 años
Puntos: 0
Respuesta: Como mostrar un mismo registro varias veces

hola mira mi problema es que mi pqagina tiene un buscador el va y mira a la bd si se encuentra me muestra los datos si no se encuentra me dic que no c encuentra en la bd pero al mostarme el dato me muestra el primer registro de la bd y no el q estoy buscando me gustaria escuchar respuestas graciassss

Etiquetas: registro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 23:04.