SHARE
TWEET

omfEjemplo1

christiansalazarh Jan 18th, 2014 68 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #podemos crear objetos y asignar propiedades a estos de forma dinĂ¡mica:
  2. $api = new OmfDb();
  3. $id = $api->create('Empresa');
  4. $api->set($id, 'razonsocial', 'Vehiculos ABC');
  5. $api->set($id, 'rif', '123456');
  6. $api->set($id, 'direccion', 'en algun lugar del mundo');
  7.  
  8. #podemos buscar los objetos creados:
  9. foreach($api->find("Empresa","rif","123456") as $obj){
  10.      list($empresa_id) = $obj;
  11.      printf("razonsocial=%s\n", $api->get($empresa_id, "razonsocial"));
  12. }
  13.  
  14. #podemos listar que propiedades se han definidos para una instancia (no la clase, en OMF cada instancia maneja sus propiedades)
  15. foreach($api->listPropertys($empresa_id) as $propertyname)
  16.    printf("propiedad: %s, valor: %s\n",
  17.         $propertyname, $api->get($empresa_id, $propertyname));
  18.  
  19. #podemos listar todas las instancias de clase "Empresa":
  20. # (find y listObjets se parecen, find busca objetos de clase pero conteniendo un atributo, en cambio listObjects busca todos los objetos de una clase, con opciones para paginar)
  21. foreach($api->listObjects("Empresa") as $obj){
  22.    list($empresa_id) = $obj;
  23.    printf("razonsocial=%s\n", $api->get($empresa_id, "razonsocial"));
  24. }
  25.  
  26. #creamos un Vehiculo, para ser ofrecido en la lista de vehiculos de la Empresa:
  27. #
  28. $vid1 = $api->create('Vehiculo');
  29. $api->set($vid1, 'vin', '991991991');
  30. $api->set($vid1, 'marca', 'Chevrolet');
  31. $api->set($vid1, 'color', 'Azul');
  32.  
  33. $vid2 = $api->create('Vehiculo');
  34. $api->set($vid2, 'vin', '991991992');
  35. $api->set($vid2, 'marca', 'Ford');
  36. $api->set($vid2, 'color', 'Fiesta');
  37.  
  38. $vid3 = $api->create('Vehiculo');
  39. $api->set($vid3, 'vin', '991991993');
  40. $api->set($vid3, 'marca', 'Chevrolet');
  41. $api->set($vid3, 'color', 'Malibu');
  42.  
  43. #hasta este momento los vehiculos estan creados, pero no relacionados con ningun otro objeto.
  44. #hagamos las relaciones:
  45.  
  46. $empresas =$api->find("Empresa","rif","123456");
  47. list($empresa_id) = $empresas[0];
  48.  
  49. # relacion: la empresa vende vehiculo
  50. $api->createRelation($empresa_id, $vid1, "vende");
  51. $api->createRelation($empresa_id, $vid2, "vende");
  52.  
  53. #ahora un vendedor vende estos dos unicos vehiculos ofrecidos:
  54. $ag1 = $api->create('Vendedor');
  55. $api->set($ag1, 'rif', '881881881');
  56. $api->set($ag1, 'nombres', 'Christian Salazar');
  57.  
  58. $ag2 = $api->create('Vendedor');
  59. $ap2->set($ag2, 'rif', '881881882');
  60. $ap2->set($ag2, 'nombres', 'Otro Vendedor');
  61.  
  62. $api->createRelation($ag1, $vin1, "vendedor");
  63. $api->createRelation($ag1, $vin2, "vendedor");
  64. $api->createRelation($ag2, $vin3, "vendedor");
  65.  
  66. #como sabemos que vehiculos vende "Christian Salazar" ?
  67. foreach($api->getChilds($ag1, "vendedor", "Vehiculo") as $obj){
  68.    list($vehiculo_id) = $obj;
  69.    printf("vende: %s %s %s\n",
  70.      $api->get($vehiculo_id, "vin"),
  71.      $api->get($vehiculo_id, "marca"),
  72.      $api->get($vehiculo_id, "color")
  73.    );
  74. }
RAW Paste Data
Pastebin PRO Summer Special!
Get 40% OFF on Pastebin PRO accounts!
Top