RangeError: Index '36' specified is out of bounds.
at mx.collections::ListCollectionView/getItemAt()[E:\dev\4.y\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:502]
at mx.collections::ListCollectionView/http://www.adobe.com/2006/actionscript/flash/proxy::getProperty()[E:\dev\4.y\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:874]
at ComandasPos/itemgrupo()[E:\Michael\php\web\Solucion Empresarial v4\SigNumDesktop\src\ComandasPos.mxml:2100]
Porfavor pueden ayudarm, no logro entender este error.
El codigo donde hago lo que digo esta de la siguiente manera:
public function itemgrupo(event:MouseEvent):void{
COD_ITEM = int(String(event.currentTarget.id).substr(4, String(event.currentTarget.id).length));
var cantidad:Number = 1;
var existe:int = -1;
var precio:Number = new Number();
var valor:Number = new Number();
var descuento:Number = new Number();
var aux:String = new String();
var precioiva:Number = new Number();
var pos:int = 0;
for(var k:int = 0; k<dpitemsgrupos.length; k++)
{
if(COD_ITEM == dpitemsgrupos[k].ITE_CODIGO)
{
pos = k;
}
}
ITE_CODIGO=dpitemsgrupos[k].ITE_CODIGO;
ITE_BARRAS=dpitemsgrupos[k].ITE_BARRAS;
ITE_DESCRIPCION =dpitemsgrupos[k].ITE_DESCRIPCION;
ITE_PVP = dpitemsgrupos[k].ITE_PVP;
ITE_PVD = dpitemsgrupos[k].ITE_PVD;
ITE_PUNIT_IVA =dpitemsgrupos[k].ITE_PVPIVA;
ITE_TIPO = int(dpitemsgrupos[k].ITE_TIPO);
ITE_TARJETA = dpitemsgrupos[k].ITE_TARJETA;
if (ITE_TIPO == 5)
{
Alert.show("No puede adicionar este tipo de ítem","SigNum");
return;
}
for(var i:int = 0; i<dpcomanda.length; i++ )
{
if (dpcomanda[i].ITE_CODIGO == ITE_CODIGO)
{
existe = i;
}
}
var pvp:Number = Number(ITE_PVP);
precioiva = pvp * (1 + (Number(ITE_PUNIT_IVA)/100));
valor = cantidad * pvp;
if(emp_distinguir == 1 && existe >= 0)
{
cantidad = Number(dpitemsgrupos[existe].ODE_CANTIDAD) +1;
valor = cantidad * pvp;
//dpcomanda.setItemAt({ITE_CODIGO:ITE_CODIGO, ITE_BARRAS:dpcomanda[existe].ITE_BARRAS, USU_CODIGO: parentApplication.usuarioActivo.USU_CODIGO, ODE_CANTIDAD:cantidad.toFixed(parentApplication.emp_precision), ITE_DESCRIPCION:dpcomanda[existe].ITE_DESCRIPCION, ODE_IMPUESTO:dpcomanda[existe].ODE_IMPUESTO, ODE_PDISTRIBUIDOR:dpcomanda[existe].ODE_PDISTRIBUIDOR, ODE_PORCENTAJE:dpcomanda[existe].ODE_PORCENTAJE, ODE_DESCUENTO: dpcomanda[existe].ODE_DESCUENTO, ODE_PRECIO:pvp,ODE_PUNITARIO:dpcomanda[existe].ODE_PUNITARIO, ODE_PRECIOIVA:dpcomanda[existe].ITE_PVPIVA, ODE_VALOR:validaFormato.format(valor),ITE_EXISTENCIA:dpcomanda[existe].ITE_EXISTENCIA},existe);
dpcomanda.setItemAt({ITE_CODIGO: ITE_CODIGO, ITE_BARRAS: dpcomanda[existe].ITE_BARRAS, ITE_DESCRIPCION: dpcomanda[existe].ITE_DESCRIPCION, ODE_IMPUESTO:dpcomanda[existe].ODE_IMPUESTO,ODE_PDISTRIBUIDOR:dpcomanda[existe].ODE_PDISTRIBUIDOR,ODE_CANTIDAD:cantidad.toFixed(parentApplication.emp_precision), ODE_DESCUENTO:dpcomanda[existe].ITE_DESCUENTO,ODE_PRECIO:pvp, ODE_PRECIOIVA:dpcomanda[existe].ITE_PVPIVA, ODE_VALOR:validaFormato.format(valor)},existe);
//le quite USU_CODIGO: parentApplication.usuarioActivo.USU_CODIGO,
filaAdicionada = existe;
}else {
precioiva = pvp * (1 + (Number(ITE_PUNIT_IVA)/100));
//dpcomanda.addItem({ITE_CODIGO:ITE_CODIGO, ITE_BARRAS:dpitemsgrupos[i].ITE_BARRAS, USU_CODIGO: parentApplication.usuarioActivo.USU_CODIGO, ODE_CANTIDAD:cantidad.toFixed(parentApplication.emp_precision), ITE_DESCRIPCION:dpitemsgrupos[i].ITE_DESCRIPCION, ODE_IMPUESTO:dpitemsgrupos[i].ITE_IMPUESTO_VAL, ODE_PDISTRIBUIDOR:dpitemsgrupos[i].ITE_PVD, ODE_PORCENTAJE:dpitemsgrupos[i].ITE_PORCENTAJE, ODE_DESCUENTO:0, ODE_PRECIO:pvp,ODE_PUNITARIO:pvp,ODE_PRECIOIVA:precioiva.toFixed(parentApplication.emp_precision),ODE_VALOR:validaDecimal.format(valor)});
dpcomanda.addItem({ITE_CODIGO:COD_ITEM, ITE_BARRAS: dpitemsgrupos[i].ITE_BARRAS, ITE_DESCRIPCION:dpitemsgrupos[i].ITE_DESCRIPCION, ODE_CANTIDAD:cantidad.toFixed(parentApplication.emp_precision),ODE_DESCUENTO:0,ITE_PVP:dpitemsgrupos[i].ITE_PVP, ODE_PRECIOIVA: dpitemsgrupos[i].ITE_PVPIVA, ODE_VALOR:validaDecimal.format(valor)});
filaAdicionada = i;
}
totalesComanda();
posAdicionarComanda();
}