Карта не может быть экспортирована в Excel - PullRequest
0 голосов
/ 22 апреля 2020

qso просто предупреждаю, я не эксперт xml, и Excel лает на меня, что я не могу экспортировать этот файл, и я не уверен, как это исправить.

Вот моя схема:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <Items YantraMessageGroupID="1" ValidateItems="N" ShipNode="346272" CompleteInventoryFlag="Y" ApplyDifferences="Y">
        <Item UnitOfMeasure="EA" ProductClass="GOOD" ItemID="11551 H1L5" InventoryOrganizationCode="688262">
            <Supplies>
                <Supply SupplyType="ONHAND" Quantity="0"/>
            </Supplies>
        </Item>
        <Item UnitOfMeasure="EA" ProductClass="GOOD" ItemID="9170 H1L5" InventoryOrganizationCode="688262">
            <Supplies>
                <Supply SupplyType="ONHAND" Quantity="0"/>
            </Supplies>
        </Item>
    </Items>

Я понимаю, что выше это не совсем схема, но Excel все равно преобразует ее в одну. Я также попробовал эту фактическую схему и получил те же результаты:

<xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema'>

 <xsd:element name='Supply'>
  <xsd:complexType>
   <xsd:sequence>
   <xsd:any namespace='http://www.w3.org/namespace/'/>
   </xsd:sequence>
   <xsd:attribute name='Quantity' type='xsd:string' use='optional'/>
   <xsd:attribute name='SupplyType' type='xsd:string' use='required'/>
  </xsd:complexType>
 </xsd:element>

 <xsd:element name='Supplies'>
  <xsd:complexType>
   <xsd:sequence>
    <xsd:element ref='Supply'/>
   </xsd:sequence>
  </xsd:complexType>
 </xsd:element>

 <xsd:element name='Item'>
  <xsd:complexType>
   <xsd:sequence>
    <xsd:element ref='Supplies'/>
   </xsd:sequence>
   <xsd:attribute name='InventoryOrganizationCode' type='xsd:string' use='required'/>
   <xsd:attribute name='ItemID' type='xsd:string' use='required'/>
   <xsd:attribute name='ProductClass' type='xsd:string' use='required'/>
   <xsd:attribute name='UnitOfMeasure' type='xsd:string' use='required'/>
  </xsd:complexType>
 </xsd:element>

 <xsd:element name='Items'>
  <xsd:complexType>
   <xsd:sequence>
    <xsd:element ref='Item'/>
   </xsd:sequence>
   <xsd:attribute name='ApplyDifferences' type='xsd:string' use='optional'/>
   <xsd:attribute name='CompleteInventoryFlag' type='xsd:string' use='optional'/>
   <xsd:attribute name='ShipNode' type='xsd:string' use='required'/>
   <xsd:attribute name='ValidateItems' type='xsd:string' use='optional'/>
   <xsd:attribute name='YantraMessageGroupID' type='xsd:string' use='optional'/>
  </xsd:complexType>
 </xsd:element>
</xsd:schema>

И в основном я хочу, чтобы узел root (Элементы) не повторялся, а затем все остальное (Единица измерения) , класс продукта, ItemID, тип Suppoly, количество) для повторения с данными, которые сопоставлены со столбцами Excel. Итак, все в ITems - это столбец, и я хочу, чтобы он отображался в верхней части экспортированного файла xml, а затем все остальное должно повторять элементы с данными, найденными в соответствующих столбцах Excel.

Проблема: каждый раз, когда я пытаюсь экспортировать этот файл, excel кричит мне, что его нельзя экспортировать

Вот как я хочу, чтобы вывод выглядел так:

    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<Items YantraMessageGroupID="71852420200421190001" ValidateItems="N" ShipNode="346272" CompleteInventoryFlag="Y" ApplyDifferences="Y">
<Item UnitOfMeasure="EA" ProductClass="GOOD" ItemID="0107-12-12" InventoryOrganizationCode="688262">
<Supplies>
<Supply SupplyType="ONHAND" Quantity="126"/>
</Supplies>
</Item>
<Item UnitOfMeasure="EA" ProductClass="GOOD" ItemID="0107-12-16" InventoryOrganizationCode="688262">
<Supplies>
<Supply SupplyType="ONHAND" Quantity="12"/>
</Supplies>
</Item>
<Item UnitOfMeasure="EA" ProductClass="GOOD" ItemID="0107-12-8" InventoryOrganizationCode="688262">
<Supplies>
<Supply SupplyType="ONHAND" Quantity="42"/>
</Supplies>
</Item>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...