Obtiene la colección de objetos asociados al objeto actual.
Los objetos se asocian mediante un registro en la tabla Objetos_Objetos. Dicha tabla tiene la estructura de Padre - Hijos.
Los objetos se asocian entre sí, mediante la clave del padre, siempre y cuando la clave del padre esté presente en la vista de la colección del hijo, y los campos se llamen igual. De lo contrario se debe definir una vista para el hijo que renombre el campo con el nombre del campo clave del padre.
lObjeto.Objetos("NombreColeccionHijaAsociada")Código VB6:
'mostrar la colección de pedidos asociada a un cliente
Set lObj = gcn.obj.dameObjeto ("Clientes", "Where IdCliente='0'")
set lColAsoc = lObj.Objetos("Pedidos")
lcolAsoc.show
'Crear un pedido de cliente desde su colección asociada, añadirle una línea y mostrar el pedido
sub CrearPedido
Set lObj = gcn.obj.dameObjeto ("Clientes", "Where IdCliente='123'")
if lObj is nothing then
msgbox "El cliente no existe"
exit sub
end if
set lPed = lObj.Objetos("Pedidos").add
lPed.update
set lLinea = lped.objetos ("Pedido_Lineas").add
lLinea.propiedades("IdArticulo")='0'
lLinea.propiedades("cantidad") = 10
lLinea.Update
lPed.show
end subCódigo C#:
using AhoraCore;
using AhoraOCX;
using AhoraSistema;
namespace AhoraScriptsVacia
{
public class Script_0 : AhoraOCX.AhoraBaseScript
{
public void Main()
{
// Mostrar Objeto
IItem lObj = (IItem)gCn.Obj.DameObjeto("Clientes", "Where IdCliente='0'");
lObj.Show();
// Mostrar Colección
IItemColeccion lColAsoc = (IItemColeccion)lObj.Objetos["Pedidos"];
lColAsoc.Show();
// Comprobación si existe objeto
IObjeto lObj2 = (IObjeto)gCn.Obj.DameObjeto("Clientes", "Where IdCliente='123'");
if (lObj2 != null)
{
AhoraCore.VBA.Interaction.MsgBox("El cliente no existe");
return;
}
// Creación de pedido y línea de pedido.
IItem lPed = (IItem)lObj.Objetos["Pedidos"].Add();
lPed["IdCliente"] = "0";
lPed.Update();
IItem lLinea = (IItem)lPed.Objetos["Pedido_Lineas"].Add();
lLinea["IdArticulo"] = '0';
lLinea["cantidad"] = 10;
lLinea.Update();
lPed.Show();
}
}
}¿Le ha sido útil este artículo?
¡Qué bien!
Gracias por sus comentarios
¡Sentimos mucho no haber sido de ayuda!
Gracias por sus comentarios
Sus comentarios se han enviado
Agradecemos su esfuerzo e intentaremos corregir el artículo