Foros del Web » Programando para Internet » PHP » Symfony »

Problemas con JOIN en doctrine 2

Estas en el tema de Problemas con JOIN en doctrine 2 en el foro de Symfony en Foros del Web. Estimados, tengo un problema al momento de hacer un inner join : A continuación muestro las 2 entidades para mostrar el ejemplo: --Entidad DocumentHeader Código ...
  #1 (permalink)  
Antiguo 16/01/2012, 10:23
 
Fecha de Ingreso: mayo-2008
Mensajes: 44
Antigüedad: 15 años, 11 meses
Puntos: 1
Problemas con JOIN en doctrine 2

Estimados, tengo un problema al momento de hacer un inner join :
A continuación muestro las 2 entidades para mostrar el ejemplo:


--Entidad DocumentHeader
Código PHP:

class DocumentHeader
{
    
/**
     * @var bigint $dheId
     *
     * @ORM\Column(name="dhe_id", type="bigint", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="SEQUENCE")
     * @ORM\SequenceGenerator(sequenceName="document_header_dhe_id_seq", allocationSize="1", initialValue="1")
     */
    
private $dheId;

    
/**
     * @var string $dheNumberDocument
     *
     * @ORM\Column(name="dhe_number_document", type="string", length=30, nullable=false)
     */
    
private $dheNumberDocument;

    
/**
     * @var date $dheDate
     *
     * @ORM\Column(name="dhe_date", type="date", nullable=false)
     */
    
private $dheDate;

    
/**
     * @var decimal $dheTotal
     *
     * @ORM\Column(name="dhe_total", type="decimal", nullable=false)
     */
    
private $dheTotal;

      
/**
     * @var decimal $dheIva
     *
     * @ORM\Column(name="dhe_iva", type="decimal", nullable=true)
     */
    
private $dheIva;

    
/**
     * @var decimal $dheNetValue
     *
     * @ORM\Column(name="dhe_net_value", type="decimal", nullable=true)
     */
    
private $dheNetValue;

-----Entidad DocumentDetail
Código PHP:

class DocumentDetail
{
    
/**
     * @var bigint $ddeId
     *
     * @ORM\Column(name="dde_id", type="bigint", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="SEQUENCE")
     * @ORM\SequenceGenerator(sequenceName="document_detail_dde_id_seq", allocationSize="1", initialValue="1")
     */
    
private $ddeId;

    
/**
     * @var integer $ddeAmount
     *
     * @ORM\Column(name="dde_amount", type="integer", nullable=false)
     */
    
private $ddeAmount;

  
/**
     * @var date $ddePackingDate
     *
     * @ORM\Column(name="dde_packing_date", type="date", nullable=true)
     */
    
private $ddePackingDate;
  
    
/**
     * @var DocumentHeader
     *
     * @ORM\ManyToOne(targetEntity="DocumentHeader")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="dhe_id", referencedColumnName="dhe_id")
     * })
     */
    
private $dhe;


El problema es que no puedo acceder a la entidad documentDetail desde DocumentHeader, ya que la relación se encuentra expresada en la entidad DocumentDetail, con el objeto dhe, para asi poder acceder a la información de la entidad DocumentHeader.


Alguien tiene una pista como hacerlo?...
Pensaba que quizás debería poner una relación en la entidad DocumentHeader que apunte a DocumentDetail. No se si es lo correcto..



Saludos
Gracias.
  #2 (permalink)  
Antiguo 16/01/2012, 19:02
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problemas con JOIN en doctrine 2

muestranos como estas haciendo la query porque la verdad es cuestion de hacer esta
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 05/04/2014, 10:37
Avatar de ReinK  
Fecha de Ingreso: abril-2014
Mensajes: 1
Antigüedad: 10 años
Puntos: 0
Exclamación Respuesta: Problemas con JOIN en doctrine 2

Yo tengo un problema similar al descrito, la consulta que realizo es la siguiente

select s from configuracion\subsistemas\models\Entity\NomSub s JOIN s.idsubsistema es where s.uri = 'contabilidad' OR s.uri = 'contabilidad/contabilidad_financiera' AND es.idestructuracomun = $identidad


El error que me devuelve el navegador es el siguiente

":"exception 'Doctrine\\ORM\\Query\\QueryException' with message '[Semantical Error] line 0, col 83 near 'es where s.uri': Error: Class configuracion\\subsistemas\\models\\Entity\\NomSub has no association named idsubsistema' in \/home\/reink\/sauxe2\/lib\/Doctrine\/ORM\/Query\/QueryException.php

Las relaciones entre las clases las realice como mismo lo hizo el autor del post.
Si pudieran ayudarme con esto pues es parte vital de mi tesis de pregrado
  #4 (permalink)  
Antiguo 07/04/2014, 18:59
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Problemas con JOIN en doctrine 2

muestra la entity, pero lo que te dice es que no tienes la asociación creada.
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way

Etiquetas: symfony2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:49.