
package com.americamovil.dda._1.enviaposicionpo;

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;


/**
 * Estructura de datos para el envío de modificacion para pedido de compras desde DDA
 * 
 * <p>Clase Java para DT_CreaPosicionPO_req complex type.
 * 
 * <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase.
 * 
 * <pre>
 * &lt;complexType name="DT_CreaPosicionPO_req">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="PedidoCompra">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="IDDocumento">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="10"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                   &lt;element name="Item" maxOccurs="unbounded">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="PosicionPO">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="5"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="IDMaterial">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="18"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="Centro">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="4"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="Cantidad">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="17"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="Precio">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="19"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="IndicadorIVA">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="2"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="TipoImputacion">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="1"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="NoPosicionPO">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="5"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="CentroCosto">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="10"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="Documento">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;maxLength value="12"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                 &lt;/sequence>
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlRootElement(name="MT_CreaPosicionPO_req" , namespace = "http://americamovil.com/DDA/1/EnviaPosicionPO" )
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "DT_CreaPosicionPO_req", propOrder = {
    "pedidoCompra"
})
public class DTCreaPosicionPOReq {

    @XmlElement(name = "PedidoCompra", required = true)
    protected DTCreaPosicionPOReq.PedidoCompra pedidoCompra;

    /**
     * Obtiene el valor de la propiedad pedidoCompra.
     * 
     * @return
     *     possible object is
     *     {@link DTCreaPosicionPOReq.PedidoCompra }
     *     
     */
    public DTCreaPosicionPOReq.PedidoCompra getPedidoCompra() {
        return pedidoCompra;
    }

    /**
     * Define el valor de la propiedad pedidoCompra.
     * 
     * @param value
     *     allowed object is
     *     {@link DTCreaPosicionPOReq.PedidoCompra }
     *     
     */
    public void setPedidoCompra(DTCreaPosicionPOReq.PedidoCompra value) {
        this.pedidoCompra = value;
    }


    /**
     * <p>Clase Java para anonymous complex type.
     * 
     * <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase.
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="IDDocumento">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="10"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *         &lt;element name="Item" maxOccurs="unbounded">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="PosicionPO">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="5"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="IDMaterial">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="18"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="Centro">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="4"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="Cantidad">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="17"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="Precio">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="19"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="IndicadorIVA">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="2"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="TipoImputacion">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="1"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="NoPosicionPO">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="5"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="CentroCosto">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="10"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="Documento">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;maxLength value="12"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *       &lt;/sequence>
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "idDocumento",
        "item"
    })
    public static class PedidoCompra {

        @XmlElement(name = "IDDocumento", required = true)
        protected String idDocumento;
        @XmlElement(name = "Item", required = true)
        protected List<DTCreaPosicionPOReq.PedidoCompra.Item> item;

        /**
         * Obtiene el valor de la propiedad idDocumento.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getIDDocumento() {
            return idDocumento;
        }

        /**
         * Define el valor de la propiedad idDocumento.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setIDDocumento(String value) {
            this.idDocumento = value;
        }

        /**
         * Gets the value of the item property.
         * 
         * <p>
         * This accessor method returns a reference to the live list,
         * not a snapshot. Therefore any modification you make to the
         * returned list will be present inside the JAXB object.
         * This is why there is not a <CODE>set</CODE> method for the item property.
         * 
         * <p>
         * For example, to add a new item, do as follows:
         * <pre>
         *    getItem().add(newItem);
         * </pre>
         * 
         * 
         * <p>
         * Objects of the following type(s) are allowed in the list
         * {@link DTCreaPosicionPOReq.PedidoCompra.Item }
         * 
         * 
         */
        public List<DTCreaPosicionPOReq.PedidoCompra.Item> getItem() {
            if (item == null) {
                item = new ArrayList<DTCreaPosicionPOReq.PedidoCompra.Item>();
            }
            return this.item;
        }


        /**
         * <p>Clase Java para anonymous complex type.
         * 
         * <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase.
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="PosicionPO">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="5"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="IDMaterial">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="18"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="Centro">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="4"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="Cantidad">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="17"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="Precio">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="19"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="IndicadorIVA">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="2"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="TipoImputacion">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="1"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="NoPosicionPO">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="5"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="CentroCosto">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="10"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="Documento">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;maxLength value="12"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "posicionPO",
            "idMaterial",
            "centro",
            "cantidad",
            "precio",
            "indicadorIVA",
            "tipoImputacion",
            "noPosicionPO",
            "centroCosto",
            "documento"
        })
        public static class Item {

            @XmlElement(name = "PosicionPO", required = true)
            protected String posicionPO;
            @XmlElement(name = "IDMaterial", required = true)
            protected String idMaterial;
            @XmlElement(name = "Centro", required = true)
            protected String centro;
            @XmlElement(name = "Cantidad", required = true)
            protected String cantidad;
            @XmlElement(name = "Precio", required = true)
            protected String precio;
            @XmlElement(name = "IndicadorIVA", required = true)
            protected String indicadorIVA;
            @XmlElement(name = "TipoImputacion", required = true)
            protected String tipoImputacion;
            @XmlElement(name = "NoPosicionPO", required = true)
            protected String noPosicionPO;
            @XmlElement(name = "CentroCosto", required = true)
            protected String centroCosto;
            @XmlElement(name = "Documento", required = true)
            protected String documento;

            /**
             * Obtiene el valor de la propiedad posicionPO.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getPosicionPO() {
                return posicionPO;
            }

            /**
             * Define el valor de la propiedad posicionPO.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setPosicionPO(String value) {
                this.posicionPO = value;
            }

            /**
             * Obtiene el valor de la propiedad idMaterial.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getIDMaterial() {
                return idMaterial;
            }

            /**
             * Define el valor de la propiedad idMaterial.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setIDMaterial(String value) {
                this.idMaterial = value;
            }

            /**
             * Obtiene el valor de la propiedad centro.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getCentro() {
                return centro;
            }

            /**
             * Define el valor de la propiedad centro.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setCentro(String value) {
                this.centro = value;
            }

            /**
             * Obtiene el valor de la propiedad cantidad.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getCantidad() {
                return cantidad;
            }

            /**
             * Define el valor de la propiedad cantidad.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setCantidad(String value) {
                this.cantidad = value;
            }

            /**
             * Obtiene el valor de la propiedad precio.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getPrecio() {
                return precio;
            }

            /**
             * Define el valor de la propiedad precio.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setPrecio(String value) {
                this.precio = value;
            }

            /**
             * Obtiene el valor de la propiedad indicadorIVA.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getIndicadorIVA() {
                return indicadorIVA;
            }

            /**
             * Define el valor de la propiedad indicadorIVA.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setIndicadorIVA(String value) {
                this.indicadorIVA = value;
            }

            /**
             * Obtiene el valor de la propiedad tipoImputacion.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getTipoImputacion() {
                return tipoImputacion;
            }

            /**
             * Define el valor de la propiedad tipoImputacion.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setTipoImputacion(String value) {
                this.tipoImputacion = value;
            }

            /**
             * Obtiene el valor de la propiedad noPosicionPO.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getNoPosicionPO() {
                return noPosicionPO;
            }

            /**
             * Define el valor de la propiedad noPosicionPO.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setNoPosicionPO(String value) {
                this.noPosicionPO = value;
            }

            /**
             * Obtiene el valor de la propiedad centroCosto.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getCentroCosto() {
                return centroCosto;
            }

            /**
             * Define el valor de la propiedad centroCosto.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setCentroCosto(String value) {
                this.centroCosto = value;
            }

            /**
             * Obtiene el valor de la propiedad documento.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getDocumento() {
                return documento;
            }

            /**
             * Define el valor de la propiedad documento.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setDocumento(String value) {
                this.documento = value;
            }

        }

    }

}
