Thursday, October 25, 2007
Estándares de Programación en C#
Aquí les pongo dos links que tienen dos documentos muy buenos de estándares para las mejores prácticas para programación en c#.
Léanlos están buenos:
Documento de Estándares de Codificación y Mejores Prácticas C#
Documento de Estándares de Codificación C#
Wednesday, October 24, 2007
Depurar con Firefox en VS 2005. Debugging web applications with firefox in Visual Studio 2005
Para depurar aplicaciones web usando Firefox en Visual Studio 2005:
1) Hacemos click derecho en la página aspx y nos aparecerá el menu. En este escojemos la opción Browse With...
2) Nos aparecerá la ventana Browse With.
En esta ventana podemos añadir el nuevo navegador, y también podemos ponerle como Default.
De esta manera, se podrá depurar aplicaciones web ya no solo con el Internet Explorer, sino también con cualquier otro navegador.
Thursday, October 18, 2007
Cómo crear un ajuste de inventario Dynamics GP 9. CreateInventoryAdjustment
Para la cabecera:
Key: número del documento
BatchKey: lote
Date: fecha
Para el detalle:
Key: número de cabecera
ItemKey: id de artícullo
Quantity: Cantidad
WarehouseKey: id de sitio donde se encuentra el item
Existen otras propiedades más pero estas nos ayudarán a crear un ajuste de inventario básico.
Ejemplo:
InventoryAdjustment ivadj = new InventoryAdjustment();
//-----------Lote-------------------------------------------------
BatchKey bk = new BatchKey();
bk.Id = "NombreDeLote";
ivadj.BatchKey = bk;
//-----------NumeroDocumento-------------------------------------------------
InventoryKey ivk = new InventoryKey();
ivk.Id = "00019";
ivadj.Key = ivk;
//-----------Fecha-------------------------------------------------
ivadj.Date = new DateTime(2007,5 ,3);
//-----------Lineas-------------------------------------------------
InventoryAdjustmentLine[] lineas = new InventoryAdjustmentLine[1];
//-----------------Numero cabecera----------------------------
InventoryLineKey ivlk = new InventoryLineKey();
InventoryKey ik = new InventoryKey();
ik.Id = "00019";
ivlk.InventoryKey = ik;
lineas[0].Key = ivlk;
//-----------------Articulo----------------------------
ItemKey itk = new ItemKey();
itk.Id = "100XLG";
lineas[0].ItemKey = itk;
//----------------Sitio----------------------------
WarehouseKey whk = new WarehouseKey();
whk.Id = "WAREHOUSE";
lineas[0].WarehouseKey = whk;
//----------------Cantidad----------------------------
Quantity q = new Quantity();
q.Value = 1;
lineas[0].Quantity = q;
//----------------Llamar al WS para crear en ajuste de inventario----------------------------
Policy pol = wsDynamicsGP.GetPolicyByOperation("CreateInventoryAdjustment", context);
wsDynamicsGP.CreateInventoryAdjustment(ivadj, context, pol);
Si no llenamos estas propiedades que son obligatorias, el web service nos dará un error.
Por ejemplo si no llenamos la propiedad Key nos saldra el siguiente error:
Microsoft.GreatPlains.eConnect Version=9.0.0.0
.Net SqlClient Data Provider
Procedure or Function 'taIVTransactionLineInsert' expects parameter '@I_vIVDOCNBR', which was not supplied.
at Microsoft.GreatPlains.eConnect.eConnectMethods.ExecStoredProcedures(String xml)
...
Por eso es necesario llenar estas propiedades que son obligatorias.