<?php
/* Autor...: William L. Taype Perez */
/* Esquema.: STE_ServicioTecnico.xml */
/* Generado: 2022-02-18 15:53:08 */

/* Busqueda de registros de la tabla STE_ServicioTecnico. */
abstract class BaseSTE_ServicioTecnicoFN extends STE_ServicioTecnicoBN
{
    /* Declaracion de constantes */
    const IdServicio = "STE_ServicioTecnico.IdServicio";
    const TipoServicio = "STE_ServicioTecnico.TipoServicio";
    const OrdenId = "STE_ServicioTecnico.OrdenId";
    const OrdenNum = "STE_ServicioTecnico.OrdenNum";
    const ComprobanteId = "STE_ServicioTecnico.ComprobanteId";
    const ComprobanteNumero = "STE_ServicioTecnico.ComprobanteNumero";
    const ComprobanteFecha = "STE_ServicioTecnico.ComprobanteFecha";
    const IdPersona = "STE_ServicioTecnico.IdPersona";
    const ClienteTipoDoc = "STE_ServicioTecnico.ClienteTipoDoc";
    const ClienteNumeroDoc = "STE_ServicioTecnico.ClienteNumeroDoc";
    const ClienteNombre = "STE_ServicioTecnico.ClienteNombre";
    const ClienteDireccionFiscal = "STE_ServicioTecnico.ClienteDireccionFiscal";
    const ClienteTelefono = "STE_ServicioTecnico.ClienteTelefono";
    const ClienteCorreo = "STE_ServicioTecnico.ClienteCorreo";
    const SerieItem = "STE_ServicioTecnico.SerieItem";
    const IdItem = "STE_ServicioTecnico.IdItem";
    const ProductoDescripcion = "STE_ServicioTecnico.ProductoDescripcion";
    const SerieExisteFlag = "STE_ServicioTecnico.SerieExisteFlag";
    const TipoGarantiaId = "STE_ServicioTecnico.TipoGarantiaId";
    const GaratiaEstadoDesc = "STE_ServicioTecnico.GaratiaEstadoDesc";
    const CubreGarantiaFlag = "STE_ServicioTecnico.CubreGarantiaFlag";
    const Estado = "STE_ServicioTecnico.Estado";
    const DescargoCliente = "STE_ServicioTecnico.DescargoCliente";
    const RevisionRecepcion = "STE_ServicioTecnico.RevisionRecepcion";
    const PlazoEntrega = "STE_ServicioTecnico.PlazoEntrega";
    const ComentarioRecepcion = "STE_ServicioTecnico.ComentarioRecepcion";
    const RecepcionUsuario = "STE_ServicioTecnico.RecepcionUsuario";
    const RecepcionFecha = "STE_ServicioTecnico.RecepcionFecha";
    const DiagnosticoUsuario = "STE_ServicioTecnico.DiagnosticoUsuario";
    const DiagnosticoFechaIni = "STE_ServicioTecnico.DiagnosticoFechaIni";
    const DiagnosticoFechaFin = "STE_ServicioTecnico.DiagnosticoFechaFin";
    const DiagnosticoExisteCobranzaFlag = "STE_ServicioTecnico.DiagnosticoExisteCobranzaFlag";
    const DiagnosticoMontoIncIGV = "STE_ServicioTecnico.DiagnosticoMontoIncIGV";
    const DiagnosticoCotizacionId = "STE_ServicioTecnico.DiagnosticoCotizacionId";
    const DiagnosticoCotizacionNum = "STE_ServicioTecnico.DiagnosticoCotizacionNum";
    const DiagnosticoComprobanteTipo = "STE_ServicioTecnico.DiagnosticoComprobanteTipo";
    const DiagnosticoComprobanteNumero = "STE_ServicioTecnico.DiagnosticoComprobanteNumero";
    const DiagnosticoComprobanteFecha = "STE_ServicioTecnico.DiagnosticoComprobanteFecha";
    const DiagnosticoComprobanteId = "STE_ServicioTecnico.DiagnosticoComprobanteId";
    const DiagnosticoCobranzaEstado = "STE_ServicioTecnico.DiagnosticoCobranzaEstado";
    const DiagnosticoCobranzaFecha = "STE_ServicioTecnico.DiagnosticoCobranzaFecha";
    const DiagnosticoRevision = "STE_ServicioTecnico.DiagnosticoRevision";
    const DiagnosticoComentario = "STE_ServicioTecnico.DiagnosticoComentario";
    const ReparacionAprobacionUsuario = "STE_ServicioTecnico.ReparacionAprobacionUsuario";
    const ReparacionAprobacionFecha = "STE_ServicioTecnico.ReparacionAprobacionFecha";
    const ReparacionUsuario = "STE_ServicioTecnico.ReparacionUsuario";
    const ReparacionFechaIni = "STE_ServicioTecnico.ReparacionFechaIni";
    const ReparacionFechaFin = "STE_ServicioTecnico.ReparacionFechaFin";
    const ReperacionAccionTomada = "STE_ServicioTecnico.ReperacionAccionTomada";
    const ReparacionComentario = "STE_ServicioTecnico.ReparacionComentario";
    const ReparacionPrecioTotalIGV = "STE_ServicioTecnico.ReparacionPrecioTotalIGV";
    const ReparacionCotizacionId = "STE_ServicioTecnico.ReparacionCotizacionId";
    const ReparacionCotizacionNum = "STE_ServicioTecnico.ReparacionCotizacionNum";
    const ReparacionComprobanteTipo = "STE_ServicioTecnico.ReparacionComprobanteTipo";
    const ReparacionComprobanteNumero = "STE_ServicioTecnico.ReparacionComprobanteNumero";
    const ReparacionComprobanteFecha = "STE_ServicioTecnico.ReparacionComprobanteFecha";
    const ReparacionComprobanteId = "STE_ServicioTecnico.ReparacionComprobanteId";
    const ReparacionCobranzaEstado = "STE_ServicioTecnico.ReparacionCobranzaEstado";
    const ReparacionCobranzaFecha = "STE_ServicioTecnico.ReparacionCobranzaFecha";
    const EntregaUsuario = "STE_ServicioTecnico.EntregaUsuario";
    const EntregaFecha = "STE_ServicioTecnico.EntregaFecha";
    const EntregaComentario = "STE_ServicioTecnico.EntregaComentario";
    const UsuarioCreacion = "STE_ServicioTecnico.UsuarioCreacion";
    const FechaCreacion = "STE_ServicioTecnico.FechaCreacion";
    const UsuarioActualizacion = "STE_ServicioTecnico.UsuarioActualizacion";
    const FechaActualizacion = "STE_ServicioTecnico.FechaActualizacion";

    public $a_Condition = array();
    public $a_OrderBy = array();
    public $a_GroupBy = array();
    public $b_Debug = false;

    /* Obtiene una conexion a la base de datos */
    public function getConnect()
    {
        $o_DBConnect = Conexion::getConexion();
        return $o_DBConnect;
    }

    public function getDebug()
    {
        if( SF_DEBUG )
        {
            $this->b_Debug = true;
        }
        return $this->b_Debug;
    }

    public function setDebug( $v )
    {
        $this->b_Debug = $v;
    }

    /* Obtiene la cadena de columas */
    public function getSelectColumns()
    {
        $s_SQLQuery = "STE_ServicioTecnico.IdServicio AS IdServicio, ";
        $s_SQLQuery .= "STE_ServicioTecnico.TipoServicio AS TipoServicio, ";
        $s_SQLQuery .= "STE_ServicioTecnico.OrdenId AS OrdenId, ";
        $s_SQLQuery .= "STE_ServicioTecnico.OrdenNum AS OrdenNum, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ComprobanteId AS ComprobanteId, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ComprobanteNumero AS ComprobanteNumero, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ComprobanteFecha AS ComprobanteFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.IdPersona AS IdPersona, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ClienteTipoDoc AS ClienteTipoDoc, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ClienteNumeroDoc AS ClienteNumeroDoc, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ClienteNombre AS ClienteNombre, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ClienteDireccionFiscal AS ClienteDireccionFiscal, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ClienteTelefono AS ClienteTelefono, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ClienteCorreo AS ClienteCorreo, ";
        $s_SQLQuery .= "STE_ServicioTecnico.SerieItem AS SerieItem, ";
        $s_SQLQuery .= "STE_ServicioTecnico.IdItem AS IdItem, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ProductoDescripcion AS ProductoDescripcion, ";
        $s_SQLQuery .= "STE_ServicioTecnico.SerieExisteFlag AS SerieExisteFlag, ";
        $s_SQLQuery .= "STE_ServicioTecnico.TipoGarantiaId AS TipoGarantiaId, ";
        $s_SQLQuery .= "STE_ServicioTecnico.GaratiaEstadoDesc AS GaratiaEstadoDesc, ";
        $s_SQLQuery .= "STE_ServicioTecnico.CubreGarantiaFlag AS CubreGarantiaFlag, ";
        $s_SQLQuery .= "STE_ServicioTecnico.Estado AS Estado, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DescargoCliente AS DescargoCliente, ";
        $s_SQLQuery .= "STE_ServicioTecnico.RevisionRecepcion AS RevisionRecepcion, ";
        $s_SQLQuery .= "STE_ServicioTecnico.PlazoEntrega AS PlazoEntrega, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ComentarioRecepcion AS ComentarioRecepcion, ";
        $s_SQLQuery .= "STE_ServicioTecnico.RecepcionUsuario AS RecepcionUsuario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.RecepcionFecha AS RecepcionFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoUsuario AS DiagnosticoUsuario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoFechaIni AS DiagnosticoFechaIni, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoFechaFin AS DiagnosticoFechaFin, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoExisteCobranzaFlag AS DiagnosticoExisteCobranzaFlag, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoMontoIncIGV AS DiagnosticoMontoIncIGV, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCotizacionId AS DiagnosticoCotizacionId, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCotizacionNum AS DiagnosticoCotizacionNum, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteTipo AS DiagnosticoComprobanteTipo, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteNumero AS DiagnosticoComprobanteNumero, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteFecha AS DiagnosticoComprobanteFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteId AS DiagnosticoComprobanteId, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCobranzaEstado AS DiagnosticoCobranzaEstado, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCobranzaFecha AS DiagnosticoCobranzaFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoRevision AS DiagnosticoRevision, ";
        $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComentario AS DiagnosticoComentario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionAprobacionUsuario AS ReparacionAprobacionUsuario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionAprobacionFecha AS ReparacionAprobacionFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionUsuario AS ReparacionUsuario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionFechaIni AS ReparacionFechaIni, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionFechaFin AS ReparacionFechaFin, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReperacionAccionTomada AS ReperacionAccionTomada, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComentario AS ReparacionComentario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionPrecioTotalIGV AS ReparacionPrecioTotalIGV, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCotizacionId AS ReparacionCotizacionId, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCotizacionNum AS ReparacionCotizacionNum, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteTipo AS ReparacionComprobanteTipo, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteNumero AS ReparacionComprobanteNumero, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteFecha AS ReparacionComprobanteFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteId AS ReparacionComprobanteId, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCobranzaEstado AS ReparacionCobranzaEstado, ";
        $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCobranzaFecha AS ReparacionCobranzaFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.EntregaUsuario AS EntregaUsuario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.EntregaFecha AS EntregaFecha, ";
        $s_SQLQuery .= "STE_ServicioTecnico.EntregaComentario AS EntregaComentario, ";
        $s_SQLQuery .= "STE_ServicioTecnico.UsuarioCreacion AS UsuarioCreacion, ";
        $s_SQLQuery .= "STE_ServicioTecnico.FechaCreacion AS FechaCreacion, ";
        $s_SQLQuery .= "STE_ServicioTecnico.UsuarioActualizacion AS UsuarioActualizacion, ";
        $s_SQLQuery .= "STE_ServicioTecnico.FechaActualizacion AS FechaActualizacion ";
        return $s_SQLQuery;
    }

    /* Establece el condicion de filtro de la lista resultante */
    public function addCondition( $s_Const, $s_Operator, $u_Value, $b_ComSimple = true )
    {
        $this->a_Condition[] = array( "COLUMN" => $s_Const, "OPERATOR" => $s_Operator, "VALUE" => $u_Value, "FLAG_COMILLAS" => $b_ComSimple );
    }

    /* Establece el orden de la lista resultante */
    public function addOrderBy( $s_Const, $b_OrderAsc = true )
    {
        $this->a_OrderBy[] = array( "COLUMN" => $s_Const, "ASC" => $b_OrderAsc );
    }

    /* Establece el orden de la lista resultante */
    public function addGroupBy( $s_Const )
    {
        $this->a_GroupBy[] = array( "COLUMN" => $s_Const );
    }

    /* Establece los valores desde un objeto STE_ServicioTecnicoBN */
    public function setByBN( STE_ServicioTecnicoBN $o_STE_ServicioTecnicoBN )
    {
        if ( !is_null( $o_STE_ServicioTecnicoBN->getIdServicio() ) )
        {
            $this->setIdServicio( $o_STE_ServicioTecnicoBN->getIdServicio() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getTipoServicio() ) )
        {
            $this->setTipoServicio( $o_STE_ServicioTecnicoBN->getTipoServicio() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getOrdenId() ) )
        {
            $this->setOrdenId( $o_STE_ServicioTecnicoBN->getOrdenId() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getOrdenNum() ) )
        {
            $this->setOrdenNum( $o_STE_ServicioTecnicoBN->getOrdenNum() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getComprobanteId() ) )
        {
            $this->setComprobanteId( $o_STE_ServicioTecnicoBN->getComprobanteId() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getComprobanteNumero() ) )
        {
            $this->setComprobanteNumero( $o_STE_ServicioTecnicoBN->getComprobanteNumero() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getComprobanteFecha() ) )
        {
            $this->setComprobanteFecha( $o_STE_ServicioTecnicoBN->getComprobanteFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getIdPersona() ) )
        {
            $this->setIdPersona( $o_STE_ServicioTecnicoBN->getIdPersona() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getClienteTipoDoc() ) )
        {
            $this->setClienteTipoDoc( $o_STE_ServicioTecnicoBN->getClienteTipoDoc() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getClienteNumeroDoc() ) )
        {
            $this->setClienteNumeroDoc( $o_STE_ServicioTecnicoBN->getClienteNumeroDoc() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getClienteNombre() ) )
        {
            $this->setClienteNombre( $o_STE_ServicioTecnicoBN->getClienteNombre() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getClienteDireccionFiscal() ) )
        {
            $this->setClienteDireccionFiscal( $o_STE_ServicioTecnicoBN->getClienteDireccionFiscal() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getClienteTelefono() ) )
        {
            $this->setClienteTelefono( $o_STE_ServicioTecnicoBN->getClienteTelefono() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getClienteCorreo() ) )
        {
            $this->setClienteCorreo( $o_STE_ServicioTecnicoBN->getClienteCorreo() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getSerieItem() ) )
        {
            $this->setSerieItem( $o_STE_ServicioTecnicoBN->getSerieItem() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getIdItem() ) )
        {
            $this->setIdItem( $o_STE_ServicioTecnicoBN->getIdItem() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getProductoDescripcion() ) )
        {
            $this->setProductoDescripcion( $o_STE_ServicioTecnicoBN->getProductoDescripcion() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getSerieExisteFlag() ) )
        {
            $this->setSerieExisteFlag( $o_STE_ServicioTecnicoBN->getSerieExisteFlag() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getTipoGarantiaId() ) )
        {
            $this->setTipoGarantiaId( $o_STE_ServicioTecnicoBN->getTipoGarantiaId() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getGaratiaEstadoDesc() ) )
        {
            $this->setGaratiaEstadoDesc( $o_STE_ServicioTecnicoBN->getGaratiaEstadoDesc() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getCubreGarantiaFlag() ) )
        {
            $this->setCubreGarantiaFlag( $o_STE_ServicioTecnicoBN->getCubreGarantiaFlag() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getEstado() ) )
        {
            $this->setEstado( $o_STE_ServicioTecnicoBN->getEstado() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDescargoCliente() ) )
        {
            $this->setDescargoCliente( $o_STE_ServicioTecnicoBN->getDescargoCliente() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getRevisionRecepcion() ) )
        {
            $this->setRevisionRecepcion( $o_STE_ServicioTecnicoBN->getRevisionRecepcion() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getPlazoEntrega() ) )
        {
            $this->setPlazoEntrega( $o_STE_ServicioTecnicoBN->getPlazoEntrega() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getComentarioRecepcion() ) )
        {
            $this->setComentarioRecepcion( $o_STE_ServicioTecnicoBN->getComentarioRecepcion() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getRecepcionUsuario() ) )
        {
            $this->setRecepcionUsuario( $o_STE_ServicioTecnicoBN->getRecepcionUsuario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getRecepcionFecha() ) )
        {
            $this->setRecepcionFecha( $o_STE_ServicioTecnicoBN->getRecepcionFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoUsuario() ) )
        {
            $this->setDiagnosticoUsuario( $o_STE_ServicioTecnicoBN->getDiagnosticoUsuario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoFechaIni() ) )
        {
            $this->setDiagnosticoFechaIni( $o_STE_ServicioTecnicoBN->getDiagnosticoFechaIni() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoFechaFin() ) )
        {
            $this->setDiagnosticoFechaFin( $o_STE_ServicioTecnicoBN->getDiagnosticoFechaFin() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoExisteCobranzaFlag() ) )
        {
            $this->setDiagnosticoExisteCobranzaFlag( $o_STE_ServicioTecnicoBN->getDiagnosticoExisteCobranzaFlag() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoMontoIncIGV() ) )
        {
            $this->setDiagnosticoMontoIncIGV( $o_STE_ServicioTecnicoBN->getDiagnosticoMontoIncIGV() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoCotizacionId() ) )
        {
            $this->setDiagnosticoCotizacionId( $o_STE_ServicioTecnicoBN->getDiagnosticoCotizacionId() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoCotizacionNum() ) )
        {
            $this->setDiagnosticoCotizacionNum( $o_STE_ServicioTecnicoBN->getDiagnosticoCotizacionNum() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteTipo() ) )
        {
            $this->setDiagnosticoComprobanteTipo( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteTipo() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteNumero() ) )
        {
            $this->setDiagnosticoComprobanteNumero( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteNumero() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteFecha() ) )
        {
            $this->setDiagnosticoComprobanteFecha( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteId() ) )
        {
            $this->setDiagnosticoComprobanteId( $o_STE_ServicioTecnicoBN->getDiagnosticoComprobanteId() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoCobranzaEstado() ) )
        {
            $this->setDiagnosticoCobranzaEstado( $o_STE_ServicioTecnicoBN->getDiagnosticoCobranzaEstado() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoCobranzaFecha() ) )
        {
            $this->setDiagnosticoCobranzaFecha( $o_STE_ServicioTecnicoBN->getDiagnosticoCobranzaFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoRevision() ) )
        {
            $this->setDiagnosticoRevision( $o_STE_ServicioTecnicoBN->getDiagnosticoRevision() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getDiagnosticoComentario() ) )
        {
            $this->setDiagnosticoComentario( $o_STE_ServicioTecnicoBN->getDiagnosticoComentario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionAprobacionUsuario() ) )
        {
            $this->setReparacionAprobacionUsuario( $o_STE_ServicioTecnicoBN->getReparacionAprobacionUsuario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionAprobacionFecha() ) )
        {
            $this->setReparacionAprobacionFecha( $o_STE_ServicioTecnicoBN->getReparacionAprobacionFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionUsuario() ) )
        {
            $this->setReparacionUsuario( $o_STE_ServicioTecnicoBN->getReparacionUsuario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionFechaIni() ) )
        {
            $this->setReparacionFechaIni( $o_STE_ServicioTecnicoBN->getReparacionFechaIni() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionFechaFin() ) )
        {
            $this->setReparacionFechaFin( $o_STE_ServicioTecnicoBN->getReparacionFechaFin() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReperacionAccionTomada() ) )
        {
            $this->setReperacionAccionTomada( $o_STE_ServicioTecnicoBN->getReperacionAccionTomada() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionComentario() ) )
        {
            $this->setReparacionComentario( $o_STE_ServicioTecnicoBN->getReparacionComentario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionPrecioTotalIGV() ) )
        {
            $this->setReparacionPrecioTotalIGV( $o_STE_ServicioTecnicoBN->getReparacionPrecioTotalIGV() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionCotizacionId() ) )
        {
            $this->setReparacionCotizacionId( $o_STE_ServicioTecnicoBN->getReparacionCotizacionId() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionCotizacionNum() ) )
        {
            $this->setReparacionCotizacionNum( $o_STE_ServicioTecnicoBN->getReparacionCotizacionNum() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionComprobanteTipo() ) )
        {
            $this->setReparacionComprobanteTipo( $o_STE_ServicioTecnicoBN->getReparacionComprobanteTipo() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionComprobanteNumero() ) )
        {
            $this->setReparacionComprobanteNumero( $o_STE_ServicioTecnicoBN->getReparacionComprobanteNumero() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionComprobanteFecha() ) )
        {
            $this->setReparacionComprobanteFecha( $o_STE_ServicioTecnicoBN->getReparacionComprobanteFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionComprobanteId() ) )
        {
            $this->setReparacionComprobanteId( $o_STE_ServicioTecnicoBN->getReparacionComprobanteId() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionCobranzaEstado() ) )
        {
            $this->setReparacionCobranzaEstado( $o_STE_ServicioTecnicoBN->getReparacionCobranzaEstado() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getReparacionCobranzaFecha() ) )
        {
            $this->setReparacionCobranzaFecha( $o_STE_ServicioTecnicoBN->getReparacionCobranzaFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getEntregaUsuario() ) )
        {
            $this->setEntregaUsuario( $o_STE_ServicioTecnicoBN->getEntregaUsuario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getEntregaFecha() ) )
        {
            $this->setEntregaFecha( $o_STE_ServicioTecnicoBN->getEntregaFecha() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getEntregaComentario() ) )
        {
            $this->setEntregaComentario( $o_STE_ServicioTecnicoBN->getEntregaComentario() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getUsuarioCreacion() ) )
        {
            $this->setUsuarioCreacion( $o_STE_ServicioTecnicoBN->getUsuarioCreacion() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getFechaCreacion() ) )
        {
            $this->setFechaCreacion( $o_STE_ServicioTecnicoBN->getFechaCreacion() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getUsuarioActualizacion() ) )
        {
            $this->setUsuarioActualizacion( $o_STE_ServicioTecnicoBN->getUsuarioActualizacion() );
        }
        if ( !is_null( $o_STE_ServicioTecnicoBN->getFechaActualizacion() ) )
        {
            $this->setFechaActualizacion( $o_STE_ServicioTecnicoBN->getFechaActualizacion() );
        }
    }

    /**
    * @return STE_ServicioTecnicoBN|null
    * @throws SQLException
    */
    public function selectByPK( $i_IdServicio )
    {
        if( is_null( $i_IdServicio ) ){ $i_IdServicio = -1; } 
 
        $s_SQLQuery = "SELECT ";
        $s_SQLQuery .= $this->getSelectColumns();
        $s_SQLQuery .= "FROM STE_ServicioTecnico ";
        $s_SQLQuery .= "WHERE IdServicio = ".$i_IdServicio." ";
        $s_SQLQuery .= "LIMIT 1;";
        if( $this->getDebug() ){ pr( $s_SQLQuery ); }
        $o_STE_ServicioTecnicoBN = null;
        $o_Resource = $this->getConnect();
        $o_Statement = $o_Resource->prepareStatement( $s_SQLQuery );
        $o_ResultSet = $o_Statement->executeQuery();
        $i_NumRows   = $o_ResultSet->getRecordCount();
        if( $i_NumRows > 0 )
        {
            $o_ResultSet->next();
            $a_SQLRow = $o_ResultSet->getRow(); //devuele array
            $o_STE_ServicioTecnicoBN = $this->insertObjectBN( $a_SQLRow );
        }
        return $o_STE_ServicioTecnicoBN;
    }

    public function buildConsult()
    {
        $s_SQLQuery = "";
        if ( !is_null( $this->getIdServicio() ) ) $s_SQLQuery .= "STE_ServicioTecnico.IdServicio = ".$this->getIdServicio()." AND ";
        if ( !is_null( $this->getTipoServicio() ) ) $s_SQLQuery .= "STE_ServicioTecnico.TipoServicio = ".$this->getTipoServicio()." AND ";
        if ( !is_null( $this->getOrdenId() ) ) $s_SQLQuery .= "STE_ServicioTecnico.OrdenId = '".$this->getOrdenId()."' AND ";
        if ( !is_null( $this->getOrdenNum() ) ) $s_SQLQuery .= "STE_ServicioTecnico.OrdenNum = '".$this->getOrdenNum()."' AND ";
        if ( !is_null( $this->getComprobanteId() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ComprobanteId = '".$this->getComprobanteId()."' AND ";
        if ( !is_null( $this->getComprobanteNumero() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ComprobanteNumero = '".$this->getComprobanteNumero()."' AND ";
        if ( !is_null( $this->getComprobanteFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ComprobanteFecha = '".$this->getComprobanteFecha()."' AND ";
        if ( !is_null( $this->getIdPersona() ) ) $s_SQLQuery .= "STE_ServicioTecnico.IdPersona = ".$this->getIdPersona()." AND ";
        if ( !is_null( $this->getClienteTipoDoc() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ClienteTipoDoc = '".$this->getClienteTipoDoc()."' AND ";
        if ( !is_null( $this->getClienteNumeroDoc() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ClienteNumeroDoc = '".$this->getClienteNumeroDoc()."' AND ";
        if ( !is_null( $this->getClienteNombre() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ClienteNombre = '".$this->getClienteNombre()."' AND ";
        if ( !is_null( $this->getClienteDireccionFiscal() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ClienteDireccionFiscal = '".$this->getClienteDireccionFiscal()."' AND ";
        if ( !is_null( $this->getClienteTelefono() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ClienteTelefono = '".$this->getClienteTelefono()."' AND ";
        if ( !is_null( $this->getClienteCorreo() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ClienteCorreo = '".$this->getClienteCorreo()."' AND ";
        if ( !is_null( $this->getSerieItem() ) ) $s_SQLQuery .= "STE_ServicioTecnico.SerieItem = '".$this->getSerieItem()."' AND ";
        if ( !is_null( $this->getIdItem() ) ) $s_SQLQuery .= "STE_ServicioTecnico.IdItem = '".$this->getIdItem()."' AND ";
        if ( !is_null( $this->getProductoDescripcion() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ProductoDescripcion = '".$this->getProductoDescripcion()."' AND ";
        if ( !is_null( $this->getSerieExisteFlag() ) ) $s_SQLQuery .= "STE_ServicioTecnico.SerieExisteFlag = ".$this->getSerieExisteFlag()." AND ";
        if ( !is_null( $this->getTipoGarantiaId() ) ) $s_SQLQuery .= "STE_ServicioTecnico.TipoGarantiaId = '".$this->getTipoGarantiaId()."' AND ";
        if ( !is_null( $this->getGaratiaEstadoDesc() ) ) $s_SQLQuery .= "STE_ServicioTecnico.GaratiaEstadoDesc = '".$this->getGaratiaEstadoDesc()."' AND ";
        if ( !is_null( $this->getCubreGarantiaFlag() ) ) $s_SQLQuery .= "STE_ServicioTecnico.CubreGarantiaFlag = ".$this->getCubreGarantiaFlag()." AND ";
        if ( !is_null( $this->getEstado() ) ) $s_SQLQuery .= "STE_ServicioTecnico.Estado = '".$this->getEstado()."' AND ";
        if ( !is_null( $this->getDescargoCliente() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DescargoCliente = '".$this->getDescargoCliente()."' AND ";
        if ( !is_null( $this->getRevisionRecepcion() ) ) $s_SQLQuery .= "STE_ServicioTecnico.RevisionRecepcion = '".$this->getRevisionRecepcion()."' AND ";
        if ( !is_null( $this->getPlazoEntrega() ) ) $s_SQLQuery .= "STE_ServicioTecnico.PlazoEntrega = ".$this->getPlazoEntrega()." AND ";
        if ( !is_null( $this->getComentarioRecepcion() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ComentarioRecepcion = '".$this->getComentarioRecepcion()."' AND ";
        if ( !is_null( $this->getRecepcionUsuario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.RecepcionUsuario = '".$this->getRecepcionUsuario()."' AND ";
        if ( !is_null( $this->getRecepcionFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.RecepcionFecha = '".$this->getRecepcionFecha()."' AND ";
        if ( !is_null( $this->getDiagnosticoUsuario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoUsuario = '".$this->getDiagnosticoUsuario()."' AND ";
        if ( !is_null( $this->getDiagnosticoFechaIni() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoFechaIni = '".$this->getDiagnosticoFechaIni()."' AND ";
        if ( !is_null( $this->getDiagnosticoFechaFin() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoFechaFin = '".$this->getDiagnosticoFechaFin()."' AND ";
        if ( !is_null( $this->getDiagnosticoExisteCobranzaFlag() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoExisteCobranzaFlag = ".$this->getDiagnosticoExisteCobranzaFlag()." AND ";
        if ( !is_null( $this->getDiagnosticoMontoIncIGV() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoMontoIncIGV = ".$this->getDiagnosticoMontoIncIGV()." AND ";
        if ( !is_null( $this->getDiagnosticoCotizacionId() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCotizacionId = ".$this->getDiagnosticoCotizacionId()." AND ";
        if ( !is_null( $this->getDiagnosticoCotizacionNum() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCotizacionNum = '".$this->getDiagnosticoCotizacionNum()."' AND ";
        if ( !is_null( $this->getDiagnosticoComprobanteTipo() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteTipo = '".$this->getDiagnosticoComprobanteTipo()."' AND ";
        if ( !is_null( $this->getDiagnosticoComprobanteNumero() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteNumero = '".$this->getDiagnosticoComprobanteNumero()."' AND ";
        if ( !is_null( $this->getDiagnosticoComprobanteFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteFecha = '".$this->getDiagnosticoComprobanteFecha()."' AND ";
        if ( !is_null( $this->getDiagnosticoComprobanteId() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComprobanteId = '".$this->getDiagnosticoComprobanteId()."' AND ";
        if ( !is_null( $this->getDiagnosticoCobranzaEstado() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCobranzaEstado = '".$this->getDiagnosticoCobranzaEstado()."' AND ";
        if ( !is_null( $this->getDiagnosticoCobranzaFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoCobranzaFecha = '".$this->getDiagnosticoCobranzaFecha()."' AND ";
        if ( !is_null( $this->getDiagnosticoRevision() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoRevision = '".$this->getDiagnosticoRevision()."' AND ";
        if ( !is_null( $this->getDiagnosticoComentario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.DiagnosticoComentario = '".$this->getDiagnosticoComentario()."' AND ";
        if ( !is_null( $this->getReparacionAprobacionUsuario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionAprobacionUsuario = '".$this->getReparacionAprobacionUsuario()."' AND ";
        if ( !is_null( $this->getReparacionAprobacionFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionAprobacionFecha = '".$this->getReparacionAprobacionFecha()."' AND ";
        if ( !is_null( $this->getReparacionUsuario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionUsuario = '".$this->getReparacionUsuario()."' AND ";
        if ( !is_null( $this->getReparacionFechaIni() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionFechaIni = '".$this->getReparacionFechaIni()."' AND ";
        if ( !is_null( $this->getReparacionFechaFin() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionFechaFin = '".$this->getReparacionFechaFin()."' AND ";
        if ( !is_null( $this->getReperacionAccionTomada() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReperacionAccionTomada = '".$this->getReperacionAccionTomada()."' AND ";
        if ( !is_null( $this->getReparacionComentario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComentario = '".$this->getReparacionComentario()."' AND ";
        if ( !is_null( $this->getReparacionPrecioTotalIGV() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionPrecioTotalIGV = ".$this->getReparacionPrecioTotalIGV()." AND ";
        if ( !is_null( $this->getReparacionCotizacionId() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCotizacionId = ".$this->getReparacionCotizacionId()." AND ";
        if ( !is_null( $this->getReparacionCotizacionNum() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCotizacionNum = '".$this->getReparacionCotizacionNum()."' AND ";
        if ( !is_null( $this->getReparacionComprobanteTipo() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteTipo = '".$this->getReparacionComprobanteTipo()."' AND ";
        if ( !is_null( $this->getReparacionComprobanteNumero() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteNumero = '".$this->getReparacionComprobanteNumero()."' AND ";
        if ( !is_null( $this->getReparacionComprobanteFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteFecha = '".$this->getReparacionComprobanteFecha()."' AND ";
        if ( !is_null( $this->getReparacionComprobanteId() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionComprobanteId = '".$this->getReparacionComprobanteId()."' AND ";
        if ( !is_null( $this->getReparacionCobranzaEstado() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCobranzaEstado = '".$this->getReparacionCobranzaEstado()."' AND ";
        if ( !is_null( $this->getReparacionCobranzaFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.ReparacionCobranzaFecha = '".$this->getReparacionCobranzaFecha()."' AND ";
        if ( !is_null( $this->getEntregaUsuario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.EntregaUsuario = '".$this->getEntregaUsuario()."' AND ";
        if ( !is_null( $this->getEntregaFecha() ) ) $s_SQLQuery .= "STE_ServicioTecnico.EntregaFecha = '".$this->getEntregaFecha()."' AND ";
        if ( !is_null( $this->getEntregaComentario() ) ) $s_SQLQuery .= "STE_ServicioTecnico.EntregaComentario = '".$this->getEntregaComentario()."' AND ";
        if ( !is_null( $this->getUsuarioCreacion() ) ) $s_SQLQuery .= "STE_ServicioTecnico.UsuarioCreacion = '".$this->getUsuarioCreacion()."' AND ";
        if ( !is_null( $this->getFechaCreacion() ) ) $s_SQLQuery .= "STE_ServicioTecnico.FechaCreacion = '".$this->getFechaCreacion()."' AND ";
        if ( !is_null( $this->getUsuarioActualizacion() ) ) $s_SQLQuery .= "STE_ServicioTecnico.UsuarioActualizacion = '".$this->getUsuarioActualizacion()."' AND ";
        if ( !is_null( $this->getFechaActualizacion() ) ) $s_SQLQuery .= "STE_ServicioTecnico.FechaActualizacion = '".$this->getFechaActualizacion()."' AND ";
        if ( count( $this->a_Condition ) > 0 )
        {
            foreach ( $this->a_Condition as $a_Condition )
            {
                if( $a_Condition['FLAG_COMILLAS'] )
                {
                    $s_SQLQuery .= $a_Condition[ "COLUMN" ]." ".$a_Condition[ "OPERATOR" ]." '".$a_Condition[ "VALUE" ]."' AND ";
                }
                else
                {
                    $s_SQLQuery .= $a_Condition[ "COLUMN" ]." ".$a_Condition[ "OPERATOR" ]." ".$a_Condition[ "VALUE" ]." AND ";
                }
            }
        }
        $s_SQLQuery .= "1 = 1 ";
        return $s_SQLQuery;
    }

    public function selectNumRows()
    {
        $s_SQLQuery = "SELECT ";
        $s_SQLQuery .= "COUNT(*) AS cnt ";
        $s_SQLQuery .= "FROM STE_ServicioTecnico WHERE ";
        $s_SQLQuery .= $this->buildConsult();
        
        if ( count( $this->a_GroupBy ) > 0 )
        {
            $s_SQLQuery .= "GROUP BY ";
            $s_Separator = "";
            foreach ( $this->a_GroupBy as $a_GroupBy )
            {
                $s_SQLQuery .= $s_Separator.$a_GroupBy[ "COLUMN" ]." ";
                $s_Separator = ", ";
            }
        }
        if( $this->getDebug() ){ pr( $s_SQLQuery ); }
        $o_Resource = $this->getConnect();
        $o_Statement = $o_Resource->prepareStatement( $s_SQLQuery );
        $o_ResultSet = $o_Statement->executeQuery();
        $o_ResultSet->next();
        $i_NumRows    = $o_ResultSet->getInt( 'cnt' );
        return $i_NumRows;
    }

    /**
    * @param null $i_Position
    * @param null $i_Rows
    * @return STE_ServicioTecnicoBN[]
    * @throws SQLException
    */
    public function select( $i_Position = null, $i_Rows = null )
    {
        $s_SQLQuery = "SELECT ";
        $s_SQLQuery .= $this->getSelectColumns();
        $s_SQLQuery .= "FROM STE_ServicioTecnico WHERE ";
        $s_SQLQuery .= $this->buildConsult();
        if ( count( $this->a_GroupBy ) > 0 )
        {
            $s_SQLQuery .= "GROUP BY ";
            $s_Separator = "";
            foreach ( $this->a_GroupBy as $a_GroupBy )
            {
                $s_SQLQuery .= $s_Separator.$a_GroupBy[ "COLUMN" ]." ";
                $s_Separator = ", ";
            }
        }
        if ( count( $this->a_OrderBy ) > 0 )
        {
            $s_SQLQuery = $s_SQLQuery."ORDER BY ";
            $s_Separator = "";
            foreach ( $this->a_OrderBy as $a_OrderBy )
            {
                $s_SQLQuery .= $s_Separator.$a_OrderBy[ "COLUMN" ]." ";
                if ( $a_OrderBy[ "ASC" ] === false ) $s_SQLQuery .= "DESC ";
                $s_Separator = ", ";
            }
        }
        if( !is_null( $i_Position ) && is_null( $i_Rows ) ) $s_SQLQuery .= "LIMIT ".$i_Position;
        if( !is_null( $i_Position ) && !is_null( $i_Rows ) ) $s_SQLQuery .= "LIMIT ".$i_Position.", ".$i_Rows;
        $s_SQLQuery .= ";";

        if( $this->getDebug() ){ pr( $s_SQLQuery ); }

        $a_STE_ServicioTecnicoBN = array();
        $o_Resource = $this->getConnect();
        $o_Statement = $o_Resource->prepareStatement( $s_SQLQuery );
        $o_ResultSet = $o_Statement->executeQuery();
        $i_NumRows = $o_ResultSet->getRecordCount();
        if( $i_NumRows > 0 )
        {
            while( $o_ResultSet->next() ) 
            {
                $a_SQLRow = $o_ResultSet->getRow(); //devuele array
                $o_STE_ServicioTecnicoBN = $this->insertObjectBN( $a_SQLRow );
                $a_STE_ServicioTecnicoBN[] = $o_STE_ServicioTecnicoBN;
            }
        }
        return $a_STE_ServicioTecnicoBN;
    }

    /* Devuelve un objeto STE_ServicioTecnicoBN desde un objeto propel */
    public function insertObjectBN( $a_STE_ServicioTecnico )
    {
        $o_STE_ServicioTecnicoBN = new STE_ServicioTecnicoBN();
        if ( !is_null( $a_STE_ServicioTecnico['IdServicio'] ) ) $o_STE_ServicioTecnicoBN->setIdServicio( ( integer ) $a_STE_ServicioTecnico['IdServicio'] );
        if ( !is_null( $a_STE_ServicioTecnico['TipoServicio'] ) ) $o_STE_ServicioTecnicoBN->setTipoServicio( ( integer ) $a_STE_ServicioTecnico['TipoServicio'] );
        if ( !is_null( $a_STE_ServicioTecnico['OrdenId'] ) ) $o_STE_ServicioTecnicoBN->setOrdenId( $a_STE_ServicioTecnico['OrdenId'] );
        if ( !is_null( $a_STE_ServicioTecnico['OrdenNum'] ) ) $o_STE_ServicioTecnicoBN->setOrdenNum( $a_STE_ServicioTecnico['OrdenNum'] );
        if ( !is_null( $a_STE_ServicioTecnico['ComprobanteId'] ) ) $o_STE_ServicioTecnicoBN->setComprobanteId( $a_STE_ServicioTecnico['ComprobanteId'] );
        if ( !is_null( $a_STE_ServicioTecnico['ComprobanteNumero'] ) ) $o_STE_ServicioTecnicoBN->setComprobanteNumero( $a_STE_ServicioTecnico['ComprobanteNumero'] );
        if ( !is_null( $a_STE_ServicioTecnico['ComprobanteFecha'] ) ) $o_STE_ServicioTecnicoBN->setComprobanteFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['ComprobanteFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['IdPersona'] ) ) $o_STE_ServicioTecnicoBN->setIdPersona( ( integer ) $a_STE_ServicioTecnico['IdPersona'] );
        if ( !is_null( $a_STE_ServicioTecnico['ClienteTipoDoc'] ) ) $o_STE_ServicioTecnicoBN->setClienteTipoDoc( $a_STE_ServicioTecnico['ClienteTipoDoc'] );
        if ( !is_null( $a_STE_ServicioTecnico['ClienteNumeroDoc'] ) ) $o_STE_ServicioTecnicoBN->setClienteNumeroDoc( $a_STE_ServicioTecnico['ClienteNumeroDoc'] );
        if ( !is_null( $a_STE_ServicioTecnico['ClienteNombre'] ) ) $o_STE_ServicioTecnicoBN->setClienteNombre( $a_STE_ServicioTecnico['ClienteNombre'] );
        if ( !is_null( $a_STE_ServicioTecnico['ClienteDireccionFiscal'] ) ) $o_STE_ServicioTecnicoBN->setClienteDireccionFiscal( $a_STE_ServicioTecnico['ClienteDireccionFiscal'] );
        if ( !is_null( $a_STE_ServicioTecnico['ClienteTelefono'] ) ) $o_STE_ServicioTecnicoBN->setClienteTelefono( $a_STE_ServicioTecnico['ClienteTelefono'] );
        if ( !is_null( $a_STE_ServicioTecnico['ClienteCorreo'] ) ) $o_STE_ServicioTecnicoBN->setClienteCorreo( $a_STE_ServicioTecnico['ClienteCorreo'] );
        if ( !is_null( $a_STE_ServicioTecnico['SerieItem'] ) ) $o_STE_ServicioTecnicoBN->setSerieItem( $a_STE_ServicioTecnico['SerieItem'] );
        if ( !is_null( $a_STE_ServicioTecnico['IdItem'] ) ) $o_STE_ServicioTecnicoBN->setIdItem( $a_STE_ServicioTecnico['IdItem'] );
        if ( !is_null( $a_STE_ServicioTecnico['ProductoDescripcion'] ) ) $o_STE_ServicioTecnicoBN->setProductoDescripcion( $a_STE_ServicioTecnico['ProductoDescripcion'] );
        if ( !is_null( $a_STE_ServicioTecnico['SerieExisteFlag'] ) ) $o_STE_ServicioTecnicoBN->setSerieExisteFlag( ( integer ) $a_STE_ServicioTecnico['SerieExisteFlag'] );
        if ( !is_null( $a_STE_ServicioTecnico['TipoGarantiaId'] ) ) $o_STE_ServicioTecnicoBN->setTipoGarantiaId( $a_STE_ServicioTecnico['TipoGarantiaId'] );
        if ( !is_null( $a_STE_ServicioTecnico['GaratiaEstadoDesc'] ) ) $o_STE_ServicioTecnicoBN->setGaratiaEstadoDesc( $a_STE_ServicioTecnico['GaratiaEstadoDesc'] );
        if ( !is_null( $a_STE_ServicioTecnico['CubreGarantiaFlag'] ) ) $o_STE_ServicioTecnicoBN->setCubreGarantiaFlag( ( integer ) $a_STE_ServicioTecnico['CubreGarantiaFlag'] );
        if ( !is_null( $a_STE_ServicioTecnico['Estado'] ) ) $o_STE_ServicioTecnicoBN->setEstado( $a_STE_ServicioTecnico['Estado'] );
        if ( !is_null( $a_STE_ServicioTecnico['DescargoCliente'] ) ) $o_STE_ServicioTecnicoBN->setDescargoCliente( $a_STE_ServicioTecnico['DescargoCliente'] );
        if ( !is_null( $a_STE_ServicioTecnico['RevisionRecepcion'] ) ) $o_STE_ServicioTecnicoBN->setRevisionRecepcion( $a_STE_ServicioTecnico['RevisionRecepcion'] );
        if ( !is_null( $a_STE_ServicioTecnico['PlazoEntrega'] ) ) $o_STE_ServicioTecnicoBN->setPlazoEntrega( ( integer ) $a_STE_ServicioTecnico['PlazoEntrega'] );
        if ( !is_null( $a_STE_ServicioTecnico['ComentarioRecepcion'] ) ) $o_STE_ServicioTecnicoBN->setComentarioRecepcion( $a_STE_ServicioTecnico['ComentarioRecepcion'] );
        if ( !is_null( $a_STE_ServicioTecnico['RecepcionUsuario'] ) ) $o_STE_ServicioTecnicoBN->setRecepcionUsuario( $a_STE_ServicioTecnico['RecepcionUsuario'] );
        if ( !is_null( $a_STE_ServicioTecnico['RecepcionFecha'] ) ) $o_STE_ServicioTecnicoBN->setRecepcionFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['RecepcionFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoUsuario'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoUsuario( $a_STE_ServicioTecnico['DiagnosticoUsuario'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoFechaIni'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoFechaIni( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['DiagnosticoFechaIni'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoFechaFin'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoFechaFin( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['DiagnosticoFechaFin'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoExisteCobranzaFlag'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoExisteCobranzaFlag( ( integer ) $a_STE_ServicioTecnico['DiagnosticoExisteCobranzaFlag'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoMontoIncIGV'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoMontoIncIGV( ( float ) $a_STE_ServicioTecnico['DiagnosticoMontoIncIGV'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoCotizacionId'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoCotizacionId( ( integer ) $a_STE_ServicioTecnico['DiagnosticoCotizacionId'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoCotizacionNum'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoCotizacionNum( $a_STE_ServicioTecnico['DiagnosticoCotizacionNum'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoComprobanteTipo'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoComprobanteTipo( $a_STE_ServicioTecnico['DiagnosticoComprobanteTipo'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoComprobanteNumero'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoComprobanteNumero( $a_STE_ServicioTecnico['DiagnosticoComprobanteNumero'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoComprobanteFecha'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoComprobanteFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['DiagnosticoComprobanteFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoComprobanteId'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoComprobanteId( $a_STE_ServicioTecnico['DiagnosticoComprobanteId'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoCobranzaEstado'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoCobranzaEstado( $a_STE_ServicioTecnico['DiagnosticoCobranzaEstado'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoCobranzaFecha'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoCobranzaFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['DiagnosticoCobranzaFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoRevision'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoRevision( $a_STE_ServicioTecnico['DiagnosticoRevision'] );
        if ( !is_null( $a_STE_ServicioTecnico['DiagnosticoComentario'] ) ) $o_STE_ServicioTecnicoBN->setDiagnosticoComentario( $a_STE_ServicioTecnico['DiagnosticoComentario'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionAprobacionUsuario'] ) ) $o_STE_ServicioTecnicoBN->setReparacionAprobacionUsuario( $a_STE_ServicioTecnico['ReparacionAprobacionUsuario'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionAprobacionFecha'] ) ) $o_STE_ServicioTecnicoBN->setReparacionAprobacionFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['ReparacionAprobacionFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionUsuario'] ) ) $o_STE_ServicioTecnicoBN->setReparacionUsuario( $a_STE_ServicioTecnico['ReparacionUsuario'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionFechaIni'] ) ) $o_STE_ServicioTecnicoBN->setReparacionFechaIni( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['ReparacionFechaIni'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionFechaFin'] ) ) $o_STE_ServicioTecnicoBN->setReparacionFechaFin( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['ReparacionFechaFin'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['ReperacionAccionTomada'] ) ) $o_STE_ServicioTecnicoBN->setReperacionAccionTomada( $a_STE_ServicioTecnico['ReperacionAccionTomada'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionComentario'] ) ) $o_STE_ServicioTecnicoBN->setReparacionComentario( $a_STE_ServicioTecnico['ReparacionComentario'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionPrecioTotalIGV'] ) ) $o_STE_ServicioTecnicoBN->setReparacionPrecioTotalIGV( ( float ) $a_STE_ServicioTecnico['ReparacionPrecioTotalIGV'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionCotizacionId'] ) ) $o_STE_ServicioTecnicoBN->setReparacionCotizacionId( ( integer ) $a_STE_ServicioTecnico['ReparacionCotizacionId'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionCotizacionNum'] ) ) $o_STE_ServicioTecnicoBN->setReparacionCotizacionNum( $a_STE_ServicioTecnico['ReparacionCotizacionNum'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionComprobanteTipo'] ) ) $o_STE_ServicioTecnicoBN->setReparacionComprobanteTipo( $a_STE_ServicioTecnico['ReparacionComprobanteTipo'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionComprobanteNumero'] ) ) $o_STE_ServicioTecnicoBN->setReparacionComprobanteNumero( $a_STE_ServicioTecnico['ReparacionComprobanteNumero'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionComprobanteFecha'] ) ) $o_STE_ServicioTecnicoBN->setReparacionComprobanteFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['ReparacionComprobanteFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionComprobanteId'] ) ) $o_STE_ServicioTecnicoBN->setReparacionComprobanteId( $a_STE_ServicioTecnico['ReparacionComprobanteId'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionCobranzaEstado'] ) ) $o_STE_ServicioTecnicoBN->setReparacionCobranzaEstado( $a_STE_ServicioTecnico['ReparacionCobranzaEstado'] );
        if ( !is_null( $a_STE_ServicioTecnico['ReparacionCobranzaFecha'] ) ) $o_STE_ServicioTecnicoBN->setReparacionCobranzaFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['ReparacionCobranzaFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['EntregaUsuario'] ) ) $o_STE_ServicioTecnicoBN->setEntregaUsuario( $a_STE_ServicioTecnico['EntregaUsuario'] );
        if ( !is_null( $a_STE_ServicioTecnico['EntregaFecha'] ) ) $o_STE_ServicioTecnicoBN->setEntregaFecha( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['EntregaFecha'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['EntregaComentario'] ) ) $o_STE_ServicioTecnicoBN->setEntregaComentario( $a_STE_ServicioTecnico['EntregaComentario'] );
        if ( !is_null( $a_STE_ServicioTecnico['UsuarioCreacion'] ) ) $o_STE_ServicioTecnicoBN->setUsuarioCreacion( $a_STE_ServicioTecnico['UsuarioCreacion'] );
        if ( !is_null( $a_STE_ServicioTecnico['FechaCreacion'] ) ) $o_STE_ServicioTecnicoBN->setFechaCreacion( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['FechaCreacion'], "Y-m-d H:i:s" ) );
        if ( !is_null( $a_STE_ServicioTecnico['UsuarioActualizacion'] ) ) $o_STE_ServicioTecnicoBN->setUsuarioActualizacion( $a_STE_ServicioTecnico['UsuarioActualizacion'] );
        if ( !is_null( $a_STE_ServicioTecnico['FechaActualizacion'] ) ) $o_STE_ServicioTecnicoBN->setFechaActualizacion( utilTimestamp::getTimestamp( $a_STE_ServicioTecnico['FechaActualizacion'], "Y-m-d H:i:s" ) );
        return $o_STE_ServicioTecnicoBN;
    }
}
?>