Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывожу данные в calck OpenOffice
 
 автор: час   (11.02.2009 в 09:45)   личное сообщение
 
 

что бы это могло быть
ошибка -- com.sun.star.task.ErrorCodeIOException:

  Ответить  
 
 автор: osmor   (11.02.2009 в 09:58)   личное сообщение
 
 

Серега, ну что ты как маленький, еще тебя учить как вопросы задавать?
Где код?
Где описание ситуации? Где строка в которой возникает ошибка ?

еще один такой вопрос и получишь снежком в глаз

  Ответить  
 
 автор: час   (11.02.2009 в 10:08)   личное сообщение
15 Кб.
 
 

Ой , блин
На до же пропала сволочь.........


Строку с ошибкой никак не отловлю....
То всё проходит на ура а то .......







Public Function Print_REESTRS(Patch_Name As String, Sheet_Name As String)
' Автосоздание реестров за день
'Печать всех реестров за день
'http://hiprog.com/index.php?option=com_content&task=view&id=251661586

'Oleg Smorchkov aka osmor специально для www.hiprog.com

Dim oServiceManager As Object
Dim oDesktop As Object
Dim oCalcDoc As Object
Dim oBook As Object
Dim oSheet As Object
Dim aNoArgs()
Dim prop(0)
Dim oCells  As Object
Dim i As Integer
Dim j As Integer
Dim cUrl As String
Dim MyRst As DAO.Recordset
Dim oRange As Object
Dim summa_ As Currency
Dim Commission_ As Currency
Dim For_payment_  As Currency

On Error GoTo Print_REESTRS_Error
'-------------------------------------------------------------------------------
Set MyRst = CurrentDb.OpenRecordset("Pay_Reestr_QUE", dbOpenDynaset)
If MyRst.EOF Then
NET_Postuplenii = Nz(NET_Postuplenii) & vbCrLf & "Нет поступлений " & Sheet_Name
Set oBook = Nothing
Set oSheet = Nothing
Set oCalcDoc = Nothing
Set oServiceManager = Nothing
Exit Function
End If

Set oServiceManager = CreateObject("com.sun.star.ServiceManager")
Set oCalcDoc = oServiceManager.createInstance("com.sun.star.frame.Desktop")
' создаем новую книгу OpenOffice.org Calc
Set oBook = oCalcDoc.loadComponentFromURL("private:factory/scalc", "_blank", 0, aNoArgs())
Set oSheet = oBook.getSheets().getByIndex(0) 'получаем ссылку на первый лист новой книги
' Автосоздание реестров за день
With MyRst

i = 0 ' столбец
j = 0 ' строка
Call oSheet.getCellByPosition(0, j).setString(Mid(Sheet_Name, 1, 1))

Call oSheet.getCellByPosition(1, j).setString("Реестр принятых платежей за " & Mid(Sheet_Name, 14) & " от " & Mid(Sheet_Name, 3, 11))
'W_09.02.2009_Газ
Set oRange = oSheet.getCellRangeByPosition(1, j, 6, j) 'Set oRange = oSheet.getCellRangeByName(strRange)
   oRange.Merge (True) ' объединить


'MsgBox "Нужно всё проверить"
j = j + 1 ' строка
'в getCellByPosition первый аргумент столбец, второй строка
Call oSheet.getCellByPosition(0, j).setString("п/п")
Call oSheet.getCellByPosition(1, j).setString("Фамилия")
Call oSheet.getCellByPosition(2, j).setString("Адрес")
Call oSheet.getCellByPosition(3, j).setString("Л.счёт")
Call oSheet.getCellByPosition(4, j).setString("Иное")
Call oSheet.getCellByPosition(5, j).setString("Наименование платежа")
Call oSheet.getCellByPosition(6, j).setString("Вид платежа")
Call oSheet.getCellByPosition(7, j).setString("Отдел")
Call oSheet.getCellByPosition(8, j).setString("Оплата с")
Call oSheet.getCellByPosition(9, j).setString("Оплата по")
Call oSheet.getCellByPosition(10, j).setString("Сумма платежа")
Call oSheet.getCellByPosition(11, j).setString("Сумма за услуги")
Call oSheet.getCellByPosition(12, j).setString("Выдан чек")
Call oSheet.getCellByPosition(13, j).setString("Выдан П.Д.")
Call oSheet.getCellByPosition(14, j).setString("Итого к оплате.")
Call oSheet.getCellByPosition(15, j).setString("Дата записи")
Call oSheet.getCellByPosition(16, j).setString("Сторнировано или нет.")
'Call oSheet.getCellByPosition(17, j).setString("Номер сквозного документа")
Call oSheet.getCellByPosition(18, j).setString("Заметки")
Call oSheet.getCellByPosition(19, j).setString("Кассир")
Call oSheet.getCellByPosition(20, j).setString("Кто сделал сторно")
Call oSheet.getCellByPosition(21, j).setString(" ККМ")

j = j + 1 ' строка

Do Until .EOF
If Nz(!STORNO) <> 0 Then GoTo STORNO
Call oSheet.getCellByPosition(0, j).setString(Nz(!Check_Number))
Call oSheet.getCellByPosition(1, j).setString(Nz(!Surname))
Call oSheet.getCellByPosition(2, j).setString(Nz(!Adress))
Call oSheet.getCellByPosition(3, j).setString(Nz(!Personal_Account))
Call oSheet.getCellByPosition(4, j).setString(Nz(!Other))
Call oSheet.getCellByPosition(5, j).setString(Nz(!Po))
Call oSheet.getCellByPosition(6, j).setString(Nz(!Pay_Name))
Call oSheet.getCellByPosition(7, j).setString(Nz(!Department))
Call oSheet.getCellByPosition(8, j).setString(Nz(!S))
Call oSheet.getCellByPosition(9, j).setString(Nz(!Po))
Call oSheet.getCellByPosition(10, j).setString(Nz(!Pay_Summa))
Call oSheet.getCellByPosition(11, j).setString(Nz(!Fixed_Payment))
Call oSheet.getCellByPosition(12, j).setString(Nz(!Dok_Check))
Call oSheet.getCellByPosition(13, j).setString(Nz(!Dok_Print))
Call oSheet.getCellByPosition(14, j).setString(Nz(!For_payment))
Call oSheet.getCellByPosition(15, j).setString(Nz(!Pay_Data))
Call oSheet.getCellByPosition(16, j).setString(Nz(!STORNO))
'Call oSheet.getCellByPosition(17, j).setString(Nz(!Document_Number))
Call oSheet.getCellByPosition(18, j).setString(Nz(!Notes))
Call oSheet.getCellByPosition(19, j).setString(Nz(!KASSIR))
Call oSheet.getCellByPosition(20, j).setString(Nz(!Who_STORNO))
Call oSheet.getCellByPosition(21, j).setString(Nz(!ID_KKM))

j = j + 1 ' строка
STORNO:
.MoveNext
Loop
End With
MyRst.Close
Set MyRst = Nothing
j = j + 2 ' строка
Call oSheet.getCellByPosition(1, j).setString(FPost_Direktor() & "     " & Direktor())
Set oRange = oSheet.getCellRangeByPosition(1, j, 6, j) 'Set oRange = oSheet.getCellRangeByName(strRange)
   oRange.Merge (True) ' объединить
j = j + 2 ' строка
Call oSheet.getCellByPosition(1, j).setString(FPost_Glav_buh() & "       " & GLAV_BUH())
Set oRange = oSheet.getCellRangeByPosition(1, j, 6, j) 'Set oRange = oSheet.getCellRangeByName(strRange)
   oRange.Merge (True) ' объединить



oSheet.Name = Sheet_Name ' переименуем лист, в который мы выводили данные
'удаляем 3-й лист (лист с именем "Лист2" и индексом 2)
Call oBook.getSheets.removeByName(oBook.getSheets.getByIndex(2).Name)
Call oBook.getSheets.removeByName(oBook.getSheets.getByIndex(1).Name)
'сохраняем созданную книгу
cUrl = ConvertToUrl(Patch_Name + Sheet_Name + ".xls")
Set prop(0) = MakePropertyValue("FilterName", "MS Excel 97")
Call oBook.storeToURL(cUrl, prop)

Call oBook.Close(False) 'закрываем созданную книгу

'cUrl = ConvertToUrl(Patch_Name + Sheet_Name + ".xls") 'Открываем только что сохраненную книгу
'Set oBook = oCalcDoc.loadComponentFromURL(cUrl, "_blank", 0, aNoArgs())

Set oBook = Nothing
Set oSheet = Nothing
Set oCalcDoc = Nothing
Set oServiceManager = Nothing
'Patch_Name
Call Reestr_V_MDB(Patch_Name & Mid(Sheet_Name, 13) & ".mdb", F_Point_Tire(Sheet_Name))
'MsgBox "Создано " & Sheet_Name
YEST_Postuplenii = Nz(YEST_Postuplenii) & vbCrLf & "Создано " & Sheet_Name
'-------------------------------------------------------------------------------
On Error GoTo 0
Exit Function
Print_REESTRS_Error:
Call MsgBox("V_Excel_MOD" & "процедура->" & "Print_REESTRS", Err.Number, Err.Description)
Call Zapis_ERR("V_Excel_MOD" & "процедура->" & "Print_REESTRS", Err.Number, Err.Description)

End Function

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList