1

Re: Ошибка при импорте документов архив

TechnologiCS 5.0.2

Создаю, как написано в файле справки dbf-файл со структурой:
   поле OCS0 - 10 символов,
   поле OCS1 - 50 символов,
   поле OCS0 - 150 символов.
При импорте документов в архив программа выдаёт сообщение:

"Не верная структура файла :tOutDoDbf: Size mismatch for field 'OCS1', expecting: 255 actual: 50"

Хорошо, меняю в структуре dbf-файла описание поля OCS1 на 255 символов, повторяю импорт документов, получаю:

"Не верная структура файла :tOutDoDbf: Size mismatch for field 'OCS1', expecting: 255 actual: 254"

Задать размер поля в 256 символов нельзя, так как длина поля в dbf-файле описывается одним байтом.
Что с этим делать? Это ошибка в коде программы, или я что-то не так делаю? Помогите, пожалуйста, разобраться.

2

Re: Ошибка при импорте документов архив

GamiyDO, штатные функции импорта появились ещё до ледникового периода, поэтому вполне возможно, что там что-то глючит. Честно говоря, никто уже и не пытается ими пользоваться, потому что во-первых не очень-то много возможностей, во-вторых (и это главное) появился более гибкий инструмент - АПИ. АПИ позволяет Вам импортировать то, что Вы хотите туда, куда Вы хотите, в том виде, в котором Вам надо и удобно, при этом не привязываясь к каким-то жестким шаблонам файлов импорта.

Re: Ошибка при импорте документов архив

Действительно в ходе совершенствования системы импорта была допущена ошибка.

Используйте TechnologiCS-API, пример импорта документов есть в файле скриптов CSDN_DESEAN_Library.

4

Re: Ошибка при импорте документов архив

Спасибо, значит будем через АПИ...

5

Re: Ошибка при импорте документов архив

Смотрю CSDN_DESEAN_Library - какой скарипт по импорту документов?


Удалить выделенные позиции                                                           
Поиск по штрих-коду                                                                 
Подписать документ по штрих-коду                                                     
Подписать документ по штрих-коду  (с формой)                                         
Назначить штрих-код EAN13 выделенным позициям                                         
Удалить штрих-код у выделенных позиций                                               
Отметить позиции сдачи с помощью штрих-кода EAN13                                     
Отметить позиции сдачи ПрП с помощью штрих-кода EAN13                                 
Проверить, подключена ли библиотека DESEANScriptLib.dll                             
Проверка выгрузки справочников                                                       
Тест связи с библиотекой Глосис                                                       
Содержание текущего грида в лист Excel                                               
Пример выгрузки данных в Access

Re: Ошибка при импорте документов архив

А Вы прочитайте список до конца.

' ПЕРЕЧЕНЬ СКРИПТОВ                                                                   
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Любой
'
' Удалить выделенные позиции                                                            CSDN_DESEAN_Library.DelSelected
' Поиск по штрих-коду                                                                   CSDN_DESEAN_Library.Find_NBarCode
' Подписать документ по штрих-коду                                                      CSDN_DESEAN_Library.SIGN_DocFromBarCode
' Подписать документ по штрих-коду  (с формой)                                          CSDN_DESEAN_Library.Sign
' Назначить штрих-код EAN13 выделенным позициям                                         CSDN_DESEAN_Library.Set_BarCode_EAN13
' Удалить штрих-код у выделенных позиций                                                CSDN_DESEAN_Library.DELBarCode
'
' Отметить позиции сдачи с помощью штрих-кода EAN13                                     CSDN_DESEAN_Library.SelectFromBarCode_FinishedProducts
' Отметить позиции сдачи ПрП с помощью штрих-кода EAN13                                 CSDN_DESEAN_Library.SelectFromBarCode_ProductionPlan
'
' Проверить, подключена ли библиотека DESEANScriptLib.dll                               CSDN_DESEAN_Library.CheckLib
' Проверка выгрузки справочников                                                        CSDN_DESEAN_Library.ExportIntoExcel
' Тест связи с библиотекой Глосис                                                       CSDN_DESEAN_Library.GlosysMain
' Содержание текущего грида в лист Excel                                                CSDN_DESEAN_Library.IntoExcel
' Пример выгрузки данных в Access                                                        CSDN_DESEAN_Library.ExportToAccess()
' Экспорт документов Архива                                                                ExportDocs()
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Параметры позиции
'
'Sub FormMacro_ShowCard1(TCSActiveModule) 'Показать параметры
'    Call CSDN_DESEAN_Library.ShowCard( TCSActiveModule, True, Parameters, True, False )
'End Sub
'
'Sub FormMacro_ShowCard2(TCSActiveModule) 'Редактировать параметры
'    Call CSDN_DESEAN_Library.ShowCard( TCSActiveModule, False, Parameters, True, False )
'End Sub
'
'Sub FormMacro_ShowCard3(TCSActiveModule) 'Показать карточку
'    Dim Parameters(3)
'        Parameters(0) = "DATA0"
'        Parameters(1) = "TCS_MZ_DLZ"
'        Parameters(2) = "DATA6"
'        Parameters(3) = "GUID646"
'    Call CSDN_DESEAN_Library.ShowCard( TCSActiveModule, True, Parameters, False, True)
'End Sub
'
'Sub FormMacro_ShowCard4(TCSActiveModule) 'Редактировать карточку
'    Dim Parameters(3)
'        Parameters(0) = "DATA0"
'        Parameters(1) = "TCS_MZ_DLZ"
'        Parameters(2) = "DATA6"
'        Parameters(3) = "GUID646"
'    Call CSDN_DESEAN_Library.ShowCard( TCSActiveModule, False, Parameters, False, True)
'End Sub
'
'Sub FormMacro_ShowCard5(TCSActiveModule) 'Показать параметры и карточку
'    Dim Parameters(3)
'        Parameters(0) = "DATA0"
'        Parameters(1) = "TCS_MZ_DLZ"
'        Parameters(2) = "DATA6"
'        Parameters(3) = "GUID646"
'    Call CSDN_DESEAN_Library.ShowCard( TCSActiveModule, True, Parameters, True, True)
'End Sub
'
'Sub FormMacro_ShowCard6(TCSActiveModule) 'Редактировать параметры и карточку
'    Dim Parameters(3)
'        Parameters(0) = "DATA0"
'        Parameters(1) = "TCS_MZ_DLZ"
'        Parameters(2) = "DATA6"
'        Parameters(3) = "GUID64611"
'    Call CSDN_DESEAN_Library.ShowCard( TCSActiveModule, False, Parameters, True, True)
'End Sub
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Номенклатура - Номенклатурный справочник -
'
' Применяемость позиции в составе                                                       CSDN_DESEAN_Library.WU
' Оценить частоту использования параметров номенклатуры                                 CSDN_DESEAN_Library.Par_View
' Добавить параметр "Модифицировано" и параметр ссылку на БЛОК к каждой позиции ТП      CSDN_DESEAN_Library.WriteModifyPar
' Где используется в качестве значения параметра                                        CSDN_DESEAN_Library.ShowWhereUsedNmkAsPar
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Номенклатура - Спецификация -
'
' Создать УИК.                                                                          CSDN_DESEAN_Library.CreateUIK
' Показать все УИК                                                                      CSDN_DESEAN_Library.ViewAllUIK
' Разблокировать версию, заблокированную утвержденным документом                        CSDN_DESEAN_Library.DeLockOtlRsc
' Отличительная РасЦех                                                                  CSDN_DESEAN_Library.EditOtlRsc
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Номенклатура - Техпроцесс -
'
' Добавить стандартный фрагмент ТП (блок)                                               CSDN_DESEAN_Library.Add_Block
' Установить значения параметров в тексте технологических переходов                     CSDN_DESEAN_Library.SetParInTextTPR
' Добавить из группового ТП                                                             CSDN_DESEAN_Library.AddGTP
' Создать "Проект SolidCAM" на основе чертежа детали                                    CSDN_DESEAN_Library.CopyDoc
' Открыть "Проект SolidCAM", привязанный к операции                                     CSDN_DESEAN_Library.Open_SolidCAM
' Сформировать содержание операции на основании УП SolidCAM                             CSDN_DESEAN_Library.ImportFromSolidCAMdbf
' Трудовое пооперационное нормирование                                                  CSDN_DESEAN_Library.TrudNorm
' Трудовое техническое нормирование                                                     CSDN_DESEAN_Library.TrudNorm1
' Посчитать Тшт(час) = То(час) + Тв(час) по всем ОБР в ТП                               CSDN_DESEAN_Library.CalculateTsht
' Добавить позицию в ТП по штрих-коду                                                   CSDN_DESEAN_Library.AddNMkToTechnologyFromCode
' Добавить ссылку на открытый ТПП к каждой позиции ТП                                   CSDN_DESEAN_Library.WriteLinkPar
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Номенклатура - Итоговая спецификация -
'
' Посчитать сумму                                                                       CSDN_DESEAN_Library.CalcSum1
' Создать учетные карточки                                                              CSDN_DESEAN_Library.CheckBalanseCard
' Экспорт документов номенклатуры (по выделенным позициям)                              CSDN_DESEAN_Library.NMKdocExport
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Документооборот - Архив -
'
'Связи с другими документами                                                            CSDN_DESEAN_Library.WUdoc
'Синхронизация атрибутов                                                                CSDN_DESEAN_Library.AtrSync
'Импортировать Документы из БД Acess                                                    CSDN_DESEAN_Library.ImportDocFromAccess
'Растер корректор                                                                       CSDN_DESEAN_Library.RasterCorrector
'Удалить выделенные документы                                                           CSDN_DESEAN_Library.DeleteDoc
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Документооборот - Выборки -
'
' Поместить номенклатуру на РС, для выделенных строк                                    CSDN_DESEAN_Library.Put_NMK_OnUserDesktop
' Поместить позицию спецификации на РС, для выделенных строк                            CSDN_DESEAN_Library.Put_SP_OnUserDesktop
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Складской учет - Учетные карточки -
' Удалить выделенные позиции                                                            CSDN_DESEAN_Library.DeleteCardSelectedNMK
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
'Режим: Производство - План производства - Свод по ресурсам
'
'Отметить не заказанные позиции                                                         CSDN_DESEAN_Library.Check_wo_CalculateDocument
'
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Производство - План производства - План изготовления -
'
' График обеспечения                                                                   CSDN_DESEAN_Library.GrafikObespecheniya
' Диаграмма Ишикавы                                                                    CSDN_DESEAN_Library.Ishikava
' Выгрузить план в MSProject, через файл                                               CSDN_DESEAN_Library.GetFileForMSProject
' Выгрузить план в MSProject, через clipboard                                          CSDN_DESEAN_Library.GetDataForMSProject
' Выгрузка управляющих программ для станков с ЧПУ                                      CSDN_DESEAN_Library.OpenProgramm
' Выгрузка управляющих программ для станков с ЧПУ (без проверок)                       CSDN_DESEAN_Library.OpenProgramm1
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Производство - Работа с ПСп -
'
' Редактор ПСп                                                                         CSDN_DESEAN_Library.PSp_Edit
'
'---------------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Производство - Производственные спецификации - Перечень ПСп -
'
' Сформировать ПСп                                                                     CSDN_DESEAN_Library.PSp_Add
'
'---------------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------
'
' Режим: Функции -
'
' Подключение библиотеки DESEANScriptLib.dll                                           blnError        = ConnectMyLib(0)
' Подключение к БД Access и чтение ее                                                  blnError        = CSDN_DESEAN_Library.ReadAccessDB(FullPathMDB, TextSQL, RecSet)
' Читаем XML                                                                           strText         = ReadXML (strITEM, noteVALUE)
' Показать прогрессбар с заголовком                                                    strProgressBar  = ShowProgressBarNote(strProgressBar, strCaption)               
' Изменить статус документа                                                            strError        = ChangeStatusDoc (DocID,Perehod,VER_STATE_AFTER_NAME)
' Проверить уникальность значения в сетке                                              blnFlag         = UniqueGuid(Guid)                                               
'---------------------------------------------------------------------------------------------------------------------------------------
'---------------------------------------------------------------------------------------------------------------------------------------

' Добавить позицию в ТП                                    Sub FormMacro_AddNMkToTechnology(TCSActiveModule)


' Sub         PropSync_ScriptCommand1(TCSActiveModule)
' Sub         PropSync_ScriptCommand2(TCSActiveModule)
' Sub         PropSync_ScriptCommand3(TCSActiveModule)
' Sub         S1(TCSActiveModule)                            Проверить обозначения документов на уникальность               для ImportDocFromAccess
' Sub         S10(TCSActiveModule)                           Показать свойства существующего документа                      для ImportDocFromAccess
' Sub         S11(TCSActiveModule)                           Показать версии существующего документа                        для ImportDocFromAccess
' Sub         S12(TCSActiveModule)                           Проверить наличие документов
' Sub         S2(TCSActiveModule)                            Открыть файл                                                   для ImportDocFromAccess
' Sub         S3(TCSActiveModule)                            Изменить путь выгрузки                                         для OpenProgramm
' Sub         S4(TCSActiveModule)                            Проставить галочки на выделенные строки                        для OpenProgramm, ImportDocFromAccess
' Sub         S5(TCSActiveModule)                            Снять галочки у выделенных строк                               для OpenProgramm, ImportDocFromAccess
' Sub         S6(TCSActiveModule)                            Установить стандартный путь выгрузки                           для OpenProgramm
' Sub         S7(TCSActiveModule)                            Выбрать соответствие из справочника 'Атрибутов документов'     для ImportDocFromAccess
' Sub         S8(TCSActiveModule)                            Установить в соответствие реквизит 'Наименование документа'    для ImportDocFromAccess
' Sub         S9(TCSActiveModule)                            Установить в соответствие реквизит 'Обозначение документа'     для ImportDocFromAccess
' Sub         Test_SaveAs(TCSActiveModule)
'
' Sub         PutInClipboard (IBar,text)       положить штрих-код в буфер обмена                     
'
' Sub EditOtlRsc_ScriptCommand1(TCSActiveModule)             Назначить версию ТП
' Sub EditOtlRsc_ScriptCommand2(TCSActiveModule)             Удалить версию ТП

7

Re: Ошибка при импорте документов архив

Спасибо.
А формат файла данных для этого скрипта где посмотреть? (Сам я не скриптописатель).

Re: Ошибка при импорте документов архив

Этот скрипт писался для RasterID 3.1. Може в его хелпе чего и найдете.
Если нет программиста, кто же будет файл Access создавать?

9

Re: Ошибка при импорте документов архив

Сами будут - оне и просят. (оне, в смысле, заказчик)