Autor Tema: Ayuda para corte de caja  (Leído 15647 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado expecimen

  • Usuario Junior
  • **
  • Mensajes: 56
  • Puntuación: 1
  • Sexo: Masculino
    • Ver Perfil
    • Asociación Cooperativa Kodama Tecnologia, c.a.
Re:Ayuda para corte de caja
« Respuesta #30 : 19 de septiembre de 2010, 10:30:49 pm »
Amigo expesimen.
Noto ke tienes un diseño algo herrado de tus tablas.

en fecha 1 y 2 deberias tener date asi como lo tienes en le campo fecha cualkier campo ke represente dinero deberia ser decimal o numeric.

Con respecto a la salida de la fecha no tienesp or ke usar un explode si mysql te da una funcion para eso checka "date_format()" el query mismo debe devolverte la fecha ya formateada a tu gusto.

con respecto a lo de los totales despues ke corrijar lo ke he mensionado

puedes totalizar asi.

select campo1,sum(el campo a sumar) as total from tabla (where si aplica) goup by campo1


te recomiendo hagas un review de tu tabla y colokes los datatypes correctos

Debo admitirte que todo lo que he aprendido ha sido a a través de foros y vídeo que he visto por allí y que todavía me falta mucho por lo menos mi eterno problema son la fechas y las cuentas diossss tengo ahorita un castigo con un sistema de cuentas que para ello uso un java pero tiene el problema que no da la cuentas exacta siempre se falla en en decimales y no hago para separe los miles siempre me muestra así 2220.36 en cambio debería ser así 2.220,36 pero ya llevo como un año tratando de buscar una solución jejejeje pero bueno todo los días busco que mas puedo aprender

Desconectado Carlos Belisario

  • Moderador Global
  • Fanático
  • *****
  • Mensajes: 263
  • Puntuación: 17
  • Sexo: Masculino
  • software lover
    • Ver Perfil
Re:Ayuda para corte de caja
« Respuesta #31 : 19 de septiembre de 2010, 10:41:32 pm »
mysql es muy completo a la hora de dar formatos y trabajar con fechas por ahi he visto a muchos enrollados haciendo funciones complicadas en php cuando un datediff o alguna otra funciona bien aplicada te resuelve el rollo :-S
bueno si es verdad hay muchas cosas de mysql que mysql resuelve sencilamente y no hay que usar tantas funciones de php sino que tratar el dato que se obtiene, amigo exepecimen aunque mysql te ayude no esta de mas que verifiques los link ya que pueden ser de ayuda en otro momento de java no conosco nada pero en php hay una funcion para dar formato a numeros numbert_format http://translate.google.co.ve/translate?hl=es&sl=en&u=http://php.net/manual/es/function.number-format.php&ei=m9CWTNbFF4K8lQeP07inCg&sa=X&oi=translate&ct=result&resnum=1&ved=0CBsQ7gEwAA&prev=/search%3Fq%3Dnumber_format%2Bphp%26hl%3Des ahi te dejo un link ve si en java tienen algo parecido que lo mas seguro es que si saludos

Desconectado expecimen

  • Usuario Junior
  • **
  • Mensajes: 56
  • Puntuación: 1
  • Sexo: Masculino
    • Ver Perfil
    • Asociación Cooperativa Kodama Tecnologia, c.a.
Re:Ayuda para corte de caja
« Respuesta #32 : 19 de septiembre de 2010, 11:40:43 pm »
bueno si es verdad hay muchas cosas de mysql que mysql resuelve sencilamente y no hay que usar tantas funciones de php sino que tratar el dato que se obtiene, amigo exepecimen aunque mysql te ayude no esta de mas que verifiques los link ya que pueden ser de ayuda en otro momento de java no conosco nada pero en php hay una funcion para dar formato a numeros numbert_format http://translate.google.co.ve/translate?hl=es&sl=en&u=http://php.net/manual/es/function.number-format.php&ei=m9CWTNbFF4K8lQeP07inCg&sa=X&oi=translate&ct=result&resnum=1&ved=0CBsQ7gEwAA&prev=/search%3Fq%3Dnumber_format%2Bphp%26hl%3Des ahi te dejo un link ve si en java tienen algo parecido que lo mas seguro es que si saludos

El java que uso para los sistemas de cuenta es este:

Cita
<script>

function dp(price)
{
   string = "" + price;
   number = string.length - string.indexOf('.');
   if (string.indexOf('.') == -1)
      return string + '.00';
   if (number == 1)
      return string + '00';
   if (number == 2)
      return string + '0';
   if (number > 3)
      return string.substring(0,string.length-number+3);
return string;
}

function calculate()
{
document.calculo.trimestre.value = dp((document.calculo.montoanual1.value)*(document.calculo.cantidad.value)/4)
document.calculo.montoanual1.value = dp((document.calculo.Vinmueble.value)*(document.calculo.escala.value)/100)

document.calculo.t1.value = dp((document.calculo.t2.value)-(document.calculo.t2.value)*(document.calculo.Ut1.value)/100-(document.calculo.dt1.value))

document.calculo.t2.value = dp((document.calculo.t3.value)-(document.calculo.t3.value)*(document.calculo.Ut2.value)/100-(document.calculo.dt2.value))
document.calculo.t3.value = dp((document.calculo.t4.value)-(document.calculo.t4.value)*(document.calculo.Ut3.value)/100-(document.calculo.dt3.value))
document.calculo.t4.value = dp((document.calculo.t5.value)-(document.calculo.t5.value)*(document.calculo.Ut4.value)/100-(document.calculo.dt4.value))
document.calculo.t5.value = dp((document.calculo.t6.value)-(document.calculo.t6.value)*(document.calculo.Ut5.value)/100-(document.calculo.dt5.value))
document.calculo.t6.value = dp((document.calculo.montoanual1.value)-(document.calculo.montoanual1.value)*(document.calculo.Ut6.value)/100)
document.calculo.suma1.value = dp(eval(document.calculo.t1.value) + eval (document.calculo.t2.value)+ eval (document.calculo.t3.value)+ eval (document.calculo.t4.value)+ eval (document.calculo.t5.value)+ eval (document.calculo.t6.value))

document.calculo.multa1.value = dp((document.calculo.suma1.value)*(document.calculo.multa.value)/100)
document.calculo.total.value = dp(eval(document.calculo.suma1.value)+ eval (document.calculo.multa1.value)+ eval (document.calculo.trimestre.value))

}

</script>

lo que pasa es que se requiere un scrip que saque cuentas en tiempo real el problema de este scrip es que no dan la cuenta exacta siempre tiene un fallo de 0.13 decimales claro uno dirá bueno eso no es nada pero administrativamente es grave por que no puede haber perdida ni nada, la verdad que me gustaría conseguir algo parecido pero en php pero bueno y haber cuando php venezuela se anima a da un curso aquí en el zulia.

Desconectado Carlos Belisario

  • Moderador Global
  • Fanático
  • *****
  • Mensajes: 263
  • Puntuación: 17
  • Sexo: Masculino
  • software lover
    • Ver Perfil
Re:Ayuda para corte de caja
« Respuesta #33 : 20 de septiembre de 2010, 12:06:48 am »
pues eso es javascript no java esto no es lo mismo y puedes utilizar la funcion que te dije si lo kieres hacer con php revisa la funcion, de todas maneras en este link http://www.todoexpertos.com/categorias/tecnologia-e-internet/desarrollo-de-sitios-web/javascript/respuestas/1434029/formatear-numero hay una forma de formatear el numero con javascript usando regex no se si te sirva pero puedes hacerlo usando php si con la funcion que te di que es nativa por lo que seria mas rapida que las regex

Desconectado el_santo

  • Usuario Dedicado
  • ***
  • Mensajes: 225
  • Puntuación: 9
  • Sexo: Masculino
    • Ver Perfil
Re:Ayuda para corte de caja
« Respuesta #34 : 20 de septiembre de 2010, 11:50:58 am »
observando un poco tu trabajo te puedo dar esta alternativa para llegar a lo ke vos kerés.

Puedes verlo trabajando aqui http://68.233.4.180/ex.php espero entiendas el ejemplo.

Código: [Seleccionar]

<?php

 $ar
[1] = array("cero"=>"tomate","uno"=>"1","dos"=>"2","tres"=>"3");
 
$ar[2] = array("cero"=>"cebolla","uno"=>"11","dos"=>"22","tres"=>"33");
 
$ar[3] = array("cero"=>"platano","uno"=>"111","dos"=>"222","tres"=>"333");
 
$ar[4] = array("cero"=>"aji","uno"=>"1111","dos"=>"2222","tres"=>"3333");
 
 
/*Este array simula el resultado de una tabla
 
  $ar = mysql_fetch_array( mysql_query("tu query") );
  
  hechale un ojo al bucle y ve como hago las sumatorias
 
 */
 
?>



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Test</title>
<style type="text/css">
<!--
body,td,th {
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
}
-->
</style></head>
<body>
<table width="1076" border="1">
  <tr>
    <td width="125">Producto</td>
    <td width="258">Junio</td>
    <td width="231">Julio</td>
    <td width="208">Agosto</td>
    <td width="220">Junio + Julio + Agosto </td>
  </tr>
<?php
foreach( $ar as $v)
{
?>

  <tr>
    <td><?=$v['cero']?></td>
    <td><?=$v['uno']?> BsF.</td>
    <td><?=$v['dos']?> BsF.</td>
    <td><?=$v['tres']?> Bs.F </td>
    <td><?=$v['uno'] + $v['dos'] + $v['tres']?> BsF. </td>
  </tr>
<?php
$a 
+= $v[&#39;uno&#39;];
$b += $v[&#39;dos&#39;]; 
$c += $v[&#39;tres&#39;]; 
}
?>

  <tr>
    <td>&nbsp;</td>
    <td>total  <?=$a?> BsF. </td>
    <td>total  <?=$b?> BsF. </td>
    <td>total  <?=$c?> BsF. </td>
    <td>&nbsp;</td>
  </tr>
</table>
</body>
</html>


Yo hablo php........!!!

Desconectado ashrey

  • Moderador Global
  • Fanático
  • *****
  • Mensajes: 471
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re:Ayuda para corte de caja
« Respuesta #35 : 20 de septiembre de 2010, 11:59:45 am »
http://phpjs.org/functions/number_format:481 esa es la función number_format implementada en js. La documentación http://php.net/manual/es/function.number-format.php. En esa pagina puedes encontrar casi todas la funciones PHP escritas en Js

Desconectado el_santo

  • Usuario Dedicado
  • ***
  • Mensajes: 225
  • Puntuación: 9
  • Sexo: Masculino
    • Ver Perfil
Re:Ayuda para corte de caja
« Respuesta #36 : 20 de septiembre de 2010, 12:02:54 pm »
http://phpjs.org/functions/number_format:481 esa es la función number_format implementada en js. La documentación http://php.net/manual/es/function.number-format.php. En esa pagina puedes encontrar casi todas la funciones PHP escritas en Js

Con respecto a lo del formato del numero el amigo Expecimen debería crear un thread aparte.

Es solo mi opinión así el tema original llevara un hilo entendible.
Yo hablo php........!!!

Desconectado Carlos Belisario

  • Moderador Global
  • Fanático
  • *****
  • Mensajes: 263
  • Puntuación: 17
  • Sexo: Masculino
  • software lover
    • Ver Perfil
Re:Ayuda para corte de caja
« Respuesta #37 : 20 de septiembre de 2010, 12:06:29 pm »
Con respecto a lo del formato del numero el amigo Expecimen debería crear un thread aparte.

Es solo mi opinión así el tema original llevara un hilo entendible.
estoy de acuerdo pero el amigo expecimen hizo la pregunta ak de echo fijate el codigo javascript que dejo por eso mis respuesta y la del amigo ashrey, aunque con esa funcion en javascript que no sabia que la habian echo por cierto creo que le soluciona el problema o eso espero jajaj saludos

Desconectado expecimen

  • Usuario Junior
  • **
  • Mensajes: 56
  • Puntuación: 1
  • Sexo: Masculino
    • Ver Perfil
    • Asociación Cooperativa Kodama Tecnologia, c.a.
Re:Ayuda para corte de caja
« Respuesta #38 : 20 de septiembre de 2010, 02:11:32 pm »
observando un poco tu trabajo te puedo dar esta alternativa para llegar a lo ke vos kerés.

Puedes verlo trabajando aqui http://68.233.4.180/ex.php espero entiendas el ejemplo.

Código: [Seleccionar]

<?php

 $ar
[1] = array("cero"=>"tomate","uno"=>"1","dos"=>"2","tres"=>"3");
 
$ar[2] = array("cero"=>"cebolla","uno"=>"11","dos"=>"22","tres"=>"33");
 
$ar[3] = array("cero"=>"platano","uno"=>"111","dos"=>"222","tres"=>"333");
 
$ar[4] = array("cero"=>"aji","uno"=>"1111","dos"=>"2222","tres"=>"3333");
 
 
/*Este array simula el resultado de una tabla
 
  $ar = mysql_fetch_array( mysql_query("tu query") );
  
  hechale un ojo al bucle y ve como hago las sumatorias
 
 */
 
?>



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Test</title>
<style type="text/css">
<!--
body,td,th {
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
}
-->
</style></head>
<body>
<table width="1076" border="1">
  <tr>
    <td width="125">Producto</td>
    <td width="258">Junio</td>
    <td width="231">Julio</td>
    <td width="208">Agosto</td>
    <td width="220">Junio + Julio + Agosto </td>
  </tr>
<?php
foreach( $ar as $v)
{
?>

  <tr>
    <td><?=$v['cero']?></td>
    <td><?=$v['uno']?> BsF.</td>
    <td><?=$v['dos']?> BsF.</td>
    <td><?=$v['tres']?> Bs.F </td>
    <td><?=$v['uno'] + $v['dos'] + $v['tres']?> BsF. </td>
  </tr>
<?php
$a 
+= $v[&#39;uno&#39;];
$b += $v[&#39;dos&#39;]; 
$c += $v[&#39;tres&#39;]; 
}
?>

  <tr>
    <td>&nbsp;</td>
    <td>total  <?=$a?> BsF. </td>
    <td>total  <?=$b?> BsF. </td>
    <td>total  <?=$c?> BsF. </td>
    <td>&nbsp;</td>
  </tr>
</table>
</body>
</html>




Saludos a todos de nuevo esta bastante comprensible lo que me dejaste algo asi había pensado en hacer pero lo que pasa es que se requiere un sistemas de calculo que contengan casillas de texto (text) entonces ellos le colocarían los datos y automáticamente fuera sacando los cálculos en tiempo real no se si colocar el código aquí o abrir un nuevo post sobre este tema, en otro orden de idea aquellos que me han escrito en privado preguntándome si pueden usar el corte de caja que hemos estado desarrollando claro que pueden usarlo para eso estamos todo aquí para aprender claro solo le pedimos que si quieren hacer alguna modificación o mejoras por favor publiquenlo para que todos podamos usarlos y apreciarlo, por mi no hay problemas haaa y también si pude hacer el conteo de registro según la búsqueda solo agregue:

Cita
$consulto = mysql_query($sql,$conexio);
$nusuarios = mysql_num_rows($consulto);

y hagan el llamado con echo:
Cita
<?php echo $nusuarios;?>

sobre el calculo yo he utilizado este javasript ya que fue lo mas directo que conseguí y utilizaba los text lo único malo de este código que hay que estar apretando un botón llamado calcular para que haga los cálculos sobre todo si los cálculos son largos como aparece en el ejemplo, claro si usas cálculos pequeños te puede servir de mucho pero si usas largas lineas de cálculos se tiende a tardar para que saque los cálculos y de un error faltante de decimales al parecer como para que aparezca un redondeo de dos decimales el redondea pero con falta de decimales como 0.12 o 0.15 etc claro uno dirá eso  no es nada son solo decimales pero para los que trabajan en administración sabe que eso es muy grave, trate de hacer alguna modificaciones pero ahora arroja muchos decimas por ejemplo 70.236251 trate de trabajar con onkeyup para los cálculos fueran mas en tiempo real y le instale otro javascript para que redujera los decimales pero la verdad no se, en el fondo no me convence, ya publico todo el código en otro post para que lo pueda apreciar mejor
« Última Modificación: 20 de septiembre de 2010, 02:16:00 pm por expecimen »

Desconectado expecimen

  • Usuario Junior
  • **
  • Mensajes: 56
  • Puntuación: 1
  • Sexo: Masculino
    • Ver Perfil
    • Asociación Cooperativa Kodama Tecnologia, c.a.
Re:Ayuda para corte de caja
« Respuesta #39 : 20 de septiembre de 2010, 02:32:42 pm »
Para que el total se visualice en letras utiliza este código usando inlude:
Código: [Seleccionar]
include('ln.php');
ln.php:
Código: [Seleccionar]
<?php 
// FUnCIONES DE CONVERSION DE NUMEROS A LETRAS. 
fUnction céntimos() 

global 
$importe_parcial

$importe_parcial number_format($importe_parcial2".""") * 100
if (
$importe_parcial 0
$num_letra " Bolívares con ".decena_céntimos($importe_parcial); 
else 
$num_letra " Bolívares"
return 
$num_letra

fUnction 
Unidad_céntimos($numero

switch (
$numero

case 
9

$num_letra "nueve céntimos"
break; 

case 
8

$num_letra "ocho céntimos"
break; 

case 
7

$num_letra "siete céntimos"
break; 

case 
6

$num_letra "seis céntimos"
break; 

case 
5

$num_letra "cinco céntimos"
break; 

case 
4

$num_letra "cuatro céntimos"
break; 

case 
3

$num_letra "tres céntimos"
break; 

case 
2

$num_letra "dos céntimos"
break; 

case 
1

$num_letra "un céntimo"
break; 


return 
$num_letra

fUnction 
decena_céntimos($numero

if (
$numero >= 10

if (
$numero >= 90 && $numero <= 99

if (
$numero == 90
return 
"Noventa céntimos"
else if (
$numero == 91
return 
"Noventa y Un céntimos"
else 
return 
"Noventa y ".Unidad_céntimos($numero 90); 

if (
$numero >= 80 && $numero <= 89

if (
$numero == 80
return 
"Ochenta céntimos"
else if (
$numero == 81
return 
"Ochenta y Un céntimos"
else 
return 
"Ochenta y ".Unidad_céntimos($numero 80); 

if (
$numero >= 70 && $numero <= 79


if (
$numero == 70
return 
"Setenta céntimos"
else if (
$numero == 71
return 
"Setenta y Un céntimos"
else 
return 
"Setenta y ".Unidad_céntimos($numero 70); 

if (
$numero >= 60 && $numero <= 69

if (
$numero == 60
return 
"Sesenta céntimos"
else if (
$numero == 61
return 
"Sesenta y Un céntimos"
else 
return 
"Sesenta y ".Unidad_céntimos($numero 60); 

if (
$numero >= 50 && $numero <= 59

if (
$numero == 50
return 
"Cincuenta céntimos"
else if (
$numero == 51
return 
"Cincuenta y Un céntimos"
else 
return 
"Cincuenta y ".Unidad_céntimos($numero 50); 

if (
$numero >= 40 && $numero <= 49

if (
$numero == 40
return 
"Cuarenta céntimos"
else if (
$numero == 41
return 
"Cuarenta y Un céntimos"
else 
return 
"Cuarenta y ".Unidad_céntimos($numero 40); 

if (
$numero >= 30 && $numero <= 39

if (
$numero == 30
return 
"Treinta céntimos"
else if (
$numero == 91
return 
"Treinta y Un céntimos"
else 
return 
"Treinta y ".Unidad_céntimos($numero 30); 

if (
$numero >= 20 && $numero <= 29

if (
$numero == 20
return 
"Veinte céntimos"
else if (
$numero == 21
return 
"VeintiUn céntimos"
else 
return 
"Veinti".Unidad_céntimos($numero 20); 

if (
$numero >= 10 && $numero <= 19

if (
$numero == 10
return 
"Diez céntimos"
else if (
$numero == 11
return 
"Once céntimos"
else if (
$numero == 11
return 
"Doce céntimos"
else if (
$numero == 11
return 
"Trece céntimos"
else if (
$numero == 11
return 
"Catorce céntimos"
else if (
$numero == 11
return 
"Quince céntimos"
else if (
$numero == 11
return 
"DieciSeis céntimos"
else if (
$numero == 11
return 
"Diecisiete céntimos"
else if (
$numero == 11
return 
"Dieciocho céntimos"
else if (
$numero == 11
return 
"Diecinueve céntimos"
} } 
else 
return 
Unidad_céntimos($numero); 

fUnction 
Unidad($numero

switch (
$numero

case 
9

$num "Nueve"
break; 

case 
8

$num "Ocho"
break; 

case 
7

$num "Siete"
break; 

case 
6

$num "Seis"
break; 

case 
5

$num "Cinco"
break; 

case 
4

$num "Cuatro"
break; 

case 
3

$num "Tres"
break; 

case 
2

$num "Dos"
break; 

case 
1

$num "Uno"
break; 


return 
$num

fUnction 
decena($numero

if (
$numero >= 90 && $numero <= 99
$num_letra "Noventa "
if (
$numero 90
$num_letra $num_letra."y ".Unidad($numero 90); 

else if (
$numero >= 80 && $numero <= 89

$num_letra "Ochenta "
if (
$numero 80
$num_letra $num_letra."y ".Unidad($numero 80); 
}
else if (
$numero >= 70 && $numero <= 79

$num_letra "Setenta "
if (
$numero 70
$num_letra $num_letra."y ".Unidad($numero 70); 

else if (
$numero >= 60 && $numero <= 69

$num_letra "Sesenta "
if (
$numero 60
$num_letra $num_letra."y ".Unidad($numero 60); 

else if (
$numero >= 50 && $numero <= 59

$num_letra "Cincuenta "
if (
$numero 50
$num_letra $num_letra."y ".Unidad($numero 50); 

else if (
$numero >= 40 && $numero <= 49

$num_letra "Cuarenta "
if (
$numero 40
$num_letra $num_letra."y ".Unidad($numero 40); 

else if (
$numero >= 30 && $numero <= 39

$num_letra "Treinta "
if (
$numero 30
$num_letra $num_letra."y ".Unidad($numero 30); 

else if (
$numero >= 20 && $numero <= 29

if (
$numero == 20

$num_letra "Veinte "
else 
$num_letra "Veinti".Unidad($numero 20); 

else if (
$numero >= 10 && $numero <= 19

switch (
$numero

case 
10

$num_letra "Diez "
break; 

case 
11

$num_letra "Once "
break; 

case 
12

$num_letra "Doce "
break; 

case 
13

$num_letra "Trece "
break; 

case 
14

$num_letra "Catorce "
break; 

case 
15

$num_letra "Quince "
break; 

case 
16

$num_letra "Dieciséis "
break; 

case 
17

$num_letra "Diecisiete "
break; 

case 
18

$num_letra "Dieciocho "
break; 

case 
19

$num_letra "Diecinueve "
break; 

} } 
else 
$num_letra Unidad($numero); 
return 
$num_letra

fUnction 
centena($numero)

if (
$numero >= 100

if (
$numero >= 900 $numero <= 999

$num_letra "Novecientos "
if (
$numero 900
$num_letra $num_letra.decena($numero 900); 

else if (
$numero >= 800 && $numero <= 899

$num_letra "Ochocientos "
if (
$numero 800
$num_letra $num_letra.decena($numero 800); 

else if (
$numero >= 700 && $numero <= 799)

$num_letra "Setecientos "
if (
$numero 700
$num_letra $num_letra.decena($numero 700); 

else if (
$numero >= 600 && $numero <= 699

$num_letra "Seiscientos "
if (
$numero 600
$num_letra $num_letra.decena($numero 600); 

else if (
$numero >= 500 && $numero <= 599

$num_letra "Quinientos "
if (
$numero 500
$num_letra $num_letra.decena($numero 500); 

else if (
$numero >= 400 && $numero <= 499

$num_letra "Cuatrocientos "
if (
$numero 400
$num_letra $num_letra.decena($numero 400); 

else if (
$numero >= 300 && $numero <= 399

$num_letra "Trescientos "

if (
$numero 300
$num_letra $num_letra.decena($numero 300); 

else if (
$numero >= 200 && $numero <= 299
{
$num_letra "Doscientos "

if (
$numero 200
$num_letra $num_letra.decena($numero 200); 

else if (
$numero >= 100 && $numero <= 199

if (
$numero == 100
$num_letra "Cien "
else 
$num_letra "Ciento ".decena($numero 100); 


else 
$num_letra decena($numero); 

return 
$num_letra


fUnction 
cien() 

global 
$importe_parcial
$parcial 0$car 0

while (
substr($importe_parcial01) == 0
$importe_parcial substr($importe_parcial1strlen($importe_parcial) - 1); 

if (
$importe_parcial >= && $importe_parcial <= 9.99
$car 1
else if (
$importe_parcial >= 10 && $importe_parcial <= 99.99
$car 2
else if (
$importe_parcial >= 100 && $importe_parcial <= 999.99
$car 3

$parcial substr($importe_parcial0$car); 
$importe_parcial substr($importe_parcial$car); 

$num_letra centena($parcial).céntimos(); 
return 
$num_letra

fUnction 
cien_mil() 

global 
$importe_parcial


$parcial 0$car 0

while (
substr($importe_parcial01) == 0
$importe_parcial substr($importe_parcial1strlen($importe_parcial) - 1); 

if (
$importe_parcial >= 1000 && $importe_parcial <= 9999.99
$car 1
else if (
$importe_parcial >= 10000 && $importe_parcial <= 99999.99
$car 2
else if (
$importe_parcial >= 100000 && $importe_parcial <= 999999.99
$car 3

$parcial substr($importe_parcial0$car); 
$importe_parcial substr($importe_parcial$car); 
if (
$parcial 0

if (
$parcial == 1
$num_letra "mil "
else 
$num_letra centena($parcial)." mil "


return 
$num_letra
}

fUnction 
millon() 
{
global 
$importe_parcial


$parcial 0$car 0

while (
substr($importe_parcial01) == 0
$importe_parcial substr($importe_parcial1strlen($importe_parcial) - 1); 

if (
$importe_parcial >= 1000000 && $importe_parcial <= 9999999.99

$car 1
else if (
$importe_parcial >= 10000000 && $importe_parcial <= 99999999.99

$car 2
else if (
$importe_parcial >= 100000000 && $importe_parcial <= 999999999.99

$car 3

$parcial substr($importe_parcial0$car); 
$importe_parcial substr($importe_parcial$car); 

if (
$parcial == 1
$num_letras "Un mill?n "
else 
$num_letras centena($parcial)." millones "

return 
$num_letras



fUnction 
convertir_a_letras($numero

global 
$importe_parcial

$importe_parcial $numero

if (
$numero 1000000000


if (
$numero >= 1000000 && $numero <= 999999999.99
$num_letras millon().cien_mil().cien(); 
else if (
$numero >= 1000 && $numero <= 999999.99
$num_letras cien_mil().cien(); 
else if (
$numero >= && $numero <= 999.99
$num_letras cien(); 
else if (
$numero >= 0.01 && $numero <= 0.99

if (
$numero == 0.01
$num_letras "Un céntimo"
else 

$num_letras convertir_a_letras(($numero 100)."/100")." céntimos"




return 
$num_letras

?>

Para visualizarlo utiliza echo: <?php echo convertir_a_letras($total_suma);?>
« Última Modificación: 20 de septiembre de 2010, 02:34:32 pm por expecimen »

Desconectado el_santo

  • Usuario Dedicado
  • ***
  • Mensajes: 225
  • Puntuación: 9
  • Sexo: Masculino
    • Ver Perfil
Re:Ayuda para corte de caja
« Respuesta #40 : 20 de septiembre de 2010, 02:36:19 pm »
Bueno soy algo pecador al emitir opiniones ya ke te confieso ke no se de ke va tu aplicación.

pero me hago estas preguntas.

¿Es necesario tu app sea web? de ser si ¿por ke razon?

Hay otras opciones de rapido desarrollo que en poco time pueden solucionarte lo ke kerés resolver con javascript y el reporte de corte de caja ke se mencionaba al inicio (Considerando sea una app para uso en tu red.)

por otro lado al menos yo me he hecho un ocho leyendo este tema ya ke primero se me habla de un reporte y despues saltan a otra cosa al menos yo me he hecho bolas con ello  :-\  ;)  ;D

Te recomendaria un nuevo post para lo segundo donde explikes bien los procedimientos que deseas ejecfuar.
Yo hablo php........!!!

Desconectado expecimen

  • Usuario Junior
  • **
  • Mensajes: 56
  • Puntuación: 1
  • Sexo: Masculino
    • Ver Perfil
    • Asociación Cooperativa Kodama Tecnologia, c.a.
Re:Ayuda para corte de caja
« Respuesta #41 : 20 de septiembre de 2010, 02:44:48 pm »
Bueno soy algo pecador al emitir opiniones ya ke te confieso ke no se de ke va tu aplicación.

pero me hago estas preguntas.

¿Es necesario tu app sea web? de ser si ¿por ke razon?

Hay otras opciones de rapido desarrollo que en poco time pueden solucionarte lo ke kerés resolver con javascript y el reporte de corte de caja ke se mencionaba al inicio (Considerando sea una app para uso en tu red.)

por otro lado al menos yo me he hecho un ocho leyendo este tema ya ke primero se me habla de un reporte y despues saltan a otra cosa al menos yo me he hecho bolas con ello  :-\  ;)  ;D

Te recomendaria un nuevo post para lo segundo donde explikes bien los procedimientos que deseas ejecfuar.

jajaja si la verdad es que esta contestando y explicando los problemas con el javascrip que había publicados y que tu tanto los ademas me habían contestado pero si ya voy a abrir otro post para que no nos enredemos mucho en verdad espero contra de nuevo con tu ayuda para este nuevo problema que poseo y ojala publique otro post sobre el sistema de envió de SMS que me interesa bastante ya estoy leyendo y buscando información el primer post que publicaste para ver como lo adapto algo que quiero hacer...