Убрать лишние знаки в размерах товара

Тема в разделе "Opencart", создана пользователем Ed71, 3 ноя 2015.

Информация :
Внимание форумчане! При создании тем, или выкладывании какой-либо информации проверьте в какой ветке форума вы находитесь! Не путайте Opencart и Opencart2. При несоблюдении данного условия выносится соответствующее наказание! И потом не говорите что вас НЕ ПРЕДУПРЕЖДАЛИ! По возможности используйте обменники mail, yandex, google, dropbox, rghost Дабы избежать просьб перезалить и проблем с рекламой!
Модераторы: ZiX
  1. Ed71

    Ed71 Постоялец

    Регистр.:
    6 янв 2015
    Сообщения:
    107
    Симпатии:
    22
    Здравствуйте. При загрузке одиночного размера товара, например Перейти по ссылке в табе характеристики появляется такая вот фигня:
    Размер
    16.899999999999999, хотя когда размеров несколько, дробные части прописываются через запятую и без лишних знаков, например: Перейти по ссылке
    Размер
    15,3 | 15,6 | 16 | 16,6 | 17,8 | 18,2 | 18,5 | 19,4 | 19,8 | 20 | 20,7
    В прайсе одиночный размер указан таким образом: 16,9. Товары загружаю с помощью модуля автоматическая обработка прайс-листов 8.2. С сайта-донора парсинг опций осуществляется посредством Content Downloader. Смотрел в настройках ocstore и модуля, но так и не нашел в чем дело. Подскажите, пожалуйста, если можно, почему у одиночных размеров запятая заменяется точкой и самое главное, появляется столько лишних знаков после разделителя. Как это исправить? Заранее огромное спасибо.
     
  2. Dj-Tiesto

    Dj-Tiesto Стероид

    Регистр.:
    19 авг 2010
    Сообщения:
    271
    Симпатии:
    88
    А почему характеристике точка? То есть там где 16.89999999.
    Вы пробовали вручную поставить значение? Поменяйте руками значение этой опции в именно этом товаре, сначала с точкой - посмотрите, а потом с запятой - посмотрите.
     
    Ed71 нравится это.
  3. Ed71

    Ed71 Постоялец

    Регистр.:
    6 янв 2015
    Сообщения:
    107
    Симпатии:
    22
    Вручную прописал 16,9, так и осталось в карточке товара. Получается 16,9 в 16.89999999 превращается на стадии импорта? Я вначале думал, может в ячейках формулы какие зашиты. В экселе формат ячеек ставил и текст и число - ничего не меняется...
     
  4. Ed71

    Ed71 Постоялец

    Регистр.:
    6 янв 2015
    Сообщения:
    107
    Симпатии:
    22
    Сейчас открыл xml блокнотом, такая же петрушка:
    Код:
    <?xml version="1.0"?>
    <?mso-application progid="Excel.Sheet"?>
    <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
    xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:x="urn:schemas-microsoft-com:office:excel"
    xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
    xmlns:html="http://www.w3.org/TR/REC-html40">
    <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
      <Created>2006-09-16T00:00:00Z</Created>
      <LastSaved>2015-11-03T19:47:36Z</LastSaved>
      <Version>14.00</Version>
    </DocumentProperties>
    <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
      <AllowPNG/>
      <RemovePersonalInformation/>
    </OfficeDocumentSettings>
    <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
      <WindowHeight>8010</WindowHeight>
      <WindowWidth>14805</WindowWidth>
      <WindowTopX>240</WindowTopX>
      <WindowTopY>105</WindowTopY>
      <RefModeR1C1/>
      <ProtectStructure>False</ProtectStructure>
      <ProtectWindows>False</ProtectWindows>
    </ExcelWorkbook>
    <Styles>
      <Style ss:ID="Default" ss:Name="Normal">
       <Alignment ss:Vertical="Bottom"/>
       <Borders/>
       <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/>
       <Interior/>
       <NumberFormat/>
       <Protection/>
      </Style>
      <Style ss:ID="s62">
       <NumberFormat ss:Format="@"/>
      </Style>
      <Style ss:ID="s67">
       <NumberFormat ss:Format="0.0"/>
       <Protection ss:Protected="0"/>
      </Style>
    </Styles>
    <Worksheet ss:Name="Лист1">
      <Table ss:ExpandedColumnCount="4" ss:ExpandedRowCount="1" x:FullColumns="1"
       x:FullRows="1" ss:DefaultRowHeight="14.4375">
       <Row ss:AutoFitHeight="0">
        <Cell ss:StyleID="s62"><Data ss:Type="Number">237</Data></Cell>
        <Cell ss:StyleID="s62"><Data ss:Type="String">https://www.silver.ag/ru/silver-ring-zirconia-classic/</Data></Cell>
        <Cell ss:StyleID="s67"><Data ss:Type="Number">16.899999999999999</Data></Cell>
        <Cell ss:StyleID="s62"><Data ss:Type="String">жёлтый</Data></Cell>
       </Row>
      </Table>
      <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
       <PageSetup>
        <Header x:Margin="0.3"/>
        <Footer x:Margin="0.3"/>
        <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
       </PageSetup>
       <Unsynced/>
       <Print>
        <ValidPrinterInfo/>
        <VerticalResolution>0</VerticalResolution>
        <NumberofCopies>0</NumberofCopies>
       </Print>
       <Selected/>
       <Panes>
        <Pane>
         <Number>3</Number>
         <ActiveCol>2</ActiveCol>
        </Pane>
       </Panes>
       <ProtectObjects>False</ProtectObjects>
       <ProtectScenarios>False</ProtectScenarios>
      </WorksheetOptions>
    </Worksheet>
    </Workbook>
    
    Как это: 16.899999999999999 привести к нормальному виду?
     
  5. Dj-Tiesto

    Dj-Tiesto Стероид

    Регистр.:
    19 авг 2010
    Сообщения:
    271
    Симпатии:
    88
    Вы с моей рекомендации выполнили только один вариант.

    Если вы прописываете руками значение через точку 16.9 то после сохранения изменений там остается это же число??? Или стает длинное??

    Я в недоумении.. Я не понимаю почему там точка!
    Какой формат загружаемого файла с опциями? xml?
    Парсите КД, выводите какой формат? Сразу xml? Или csv конвертируете в xml?

    Хотя, наверное, суть не в этом...

    Может вам вырыть последнюю версию парсера обработчика?
     
    Ed71 нравится это.
  6. Ed71

    Ed71 Постоялец

    Регистр.:
    6 янв 2015
    Сообщения:
    107
    Симпатии:
    22
    Сейчас вручную прописал 16.9 в атрибутах, в админке. И сохранил.
    В карточке товара ничего не изменилось, так и осталось 16.89999999. Формат загружаемого файла xml.
    Сейчас я опишу, как происходит парсинг. Content Downloader парсит опции с html кодом, в который они заключены.
    Чтобы несколько опций отделялось друг от друга я ставлю в программе разделитель: </option>| | .
    Затем готовый файл csv открываю в CD, в редакторе csv файлов и преобразовываю html в текст, чтобы удалить все теги и прочий код и оставить одни значения опций.
    После этого конвертирую csv в xml с помощью exel.
     
  7. DarkClaus

    DarkClaus Создатель

    Регистр.:
    16 июл 2007
    Сообщения:
    25
    Симпатии:
    3
    Вот тут скорее всего и кроется засада. Ибо по практике известно, что excel может (и будет) косячить, где только можно.
    Проверяйте excel. Или пробуйте конвертить чем-то другим.
     
  8. Ed71

    Ed71 Постоялец

    Регистр.:
    6 янв 2015
    Сообщения:
    107
    Симпатии:
    22
    Да, все правильно. Преобразование происходит при конвертации csv в xml. Пробовал конвертить посредство Libre Office, такая же фигня получается. Установил
    Total CSV Converter, он конвертит в xml правильно, но модуль автоматическая обработка прайс-листов их не читает. Ругается, что они сконверчены не из xls файлов.
     
  9. Ed71

    Ed71 Постоялец

    Регистр.:
    6 янв 2015
    Сообщения:
    107
    Симпатии:
    22
    Пока пришел только к такому решению. На стадии обработки файла csv с опциями товаров, поставил в начале каждой строки | и в конце каждой строки |, чтобы ...ый exel при конвертации csv в xml воспринимал одиночные значения, не как числовые, а как строковые:
    | 15 | 15,6 | 16 | 16,2 | 16,6 | 16,9 | 17,2 | 17,5 | 17,8 | 18,2 | 19,1 | 19,4 | 20 | 20,4 | 20,7 | 21 | 21,3 |
    | 16,9 |
    | 17,8 | 18,5 | 19,4 | 19,8 | 20 | 20,4 |
    |15,6 |
    | 15,3 | 15,6 | 16 | 16,2 | 16,6 | 16,9 | 17,5 | 17,8 | 18,2 | 18,5 | 18,8 | 19,1 | 19,8 | 20 | 21 | 21,3 | 22,3 |
    | 22,6 |
    Может быть есть еще какое-то решение этой проблемы, но, к сожалению, я его не нашел...
     
  10. DarkClaus

    DarkClaus Создатель

    Регистр.:
    16 июл 2007
    Сообщения:
    25
    Симпатии:
    3
    Есть вариант - Перейти по ссылке
    Он конечно онлайн, но мне в своё время помогал. Попробуйте.
     
    Ed71 нравится это.