|
|
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
Нужно передать данные из базы в excel. Почему-то передает только таблицу с 19 колонками. Это ограничение или как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 15:49:23 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
А это не ограничения Excel? какой офис? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 15:51:19 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
pavel73А это не ограничения Excel? какой офис? Microsoft Office XP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 16:14:19 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
А что за база, как передаете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 16:56:22 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
TaranagaА что за база, как передаете? sql-запрос. Могу код показать. Поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 17:00:26 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
Показывай код. Вообще-то там никаких явных ограничений нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 18:06:16 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
Вот запрос CREATE PROCEDURE dbo.[rep_Ведомость] ( @objects varchar(8000), --выделенный объект в дереве @params varchar(8000) = null ) AS BEGIN TRAN IF(EXISTS(SELECT 1 FROM tempdb..sysobjects WHERE xtype = 'U' AND NAME LIKE '##asconm_spill_list')) DROP TABLE ##asconm_spill_list CREATE TABLE ##asconm_spill_list(Pos int identity(1, 1), OwnerPos int, Nesting int, MainId int, VerId int, TypeId int, LinkId int, LinkTypeId int, InversLink int, OwnerId int, MinQuantity int, iCalculation int) DECLARE @MainId int, @VerId int, @TypeId int SELECT @MainId = m.inId, @TypeId = m.inIdType, @VerId = v.inId FROM stVersions v INNER JOIN stMain m ON m.inId = v.inIdMain WHERE v.inId = @objects INSERT INTO ##asconm_spill_list(Nesting, MainId, VerId, TypeId, LinkId, LinkTypeId, OwnerId) VALUES(0, @MainId, @VerId, @TypeId, null, null, null) --сделать полную разузловку EXEC pr_asconm_spill_object @objects, 'Сборочная единица = Состоит из .../Сборочная единица, Деталь, Материал по КД#Изготавливается по .../Маршрут#Используется/Материал дополнительный#; Деталь = Заготовка/Заготовка#Изготавливается по .../Маршрут#Изготавливается из .../Материал по КД, Материал дополнительный#Используется/Материал дополнительный#;' --количество всего для каждого объекта UPDATE ##asconm_spill_list SET iCalculation = Calc FROM ##asconm_spill_list asl INNER JOIN (SELECT VerId, SUM(MinQuantity) as Calc FROM ##asconm_spill_list GROUP BY VerId) sel ON sel.VerId = asl.VerId --выдать на гора SELECT --позиция в таблице asl.Pos, --позиция в таблице родителя asl.OwnerPos, --уровень вхождения asl.Nesting, --Обозначение (select _PRODUCT from vwObjects where _ID = asl.VerId) as [Обозначение], --наименование (select value from rvwAttributes where idversion = asl.VerId and [name] = 'Наименование') as [Наименование], -- и так далее раз 19 FROM ##asconm_spill_list asl ROLLBACK TRAN GO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 10:49:27 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
а это из excelа Sub ADO_DATA(Id_DSE As String) Dim Connection As ADODB.Connection Dim RecordSet As ADODB.RecordSet Dim Col As Integer Dim RecocdCount As Integer Dim Cnct As String, Src As String Dim DSE As String, Temp As String, Temp1 As String Dim VTemp As Variant 'открыть соединение Set Connection = New ADODB.Connection 'Cnct = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Вымпел_Графики;Data Source=Lab-sp" Connection.Open ConnectionString:=ConnectStr 'создание объекта RecordSet Set RecordSet = New ADODB.RecordSet Src = "EXEC [rep_Ведомость] " + Id_DSE RecordSet.Open Source:=Src, ActiveConnection:=Connection, CursorType:=adOpenDynamic, LockType:=adLockOptimistic 'дождаться данных While RecordSet.State = 0 Set RecordSet = RecordSet.NextRecordset Wend 'выдать содержимое на лист Sheets("Data").Range("A1").Offset(0, 0).CopyFromRecordset RecordSet Set RecordSet = Nothing Connection.Close Set Connection = Nothing End Sub Sub execute() ConnectStr = Sheets("Data").Range("A1").Value 'Получение данных ADO_DATA (Sheets("Data").Range("B1").Value) work End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 10:50:54 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
На стороне Екселя - можно и попроще данные вытащить. Стандартными методами - куда как надежнее... Создаем запрос или сводную таблицу на основании сформированной в СУБД таблицы или вьюхи (см. рис.), а затем заставляем его обновляться либо из макроса, либо, задав в свойствах ("обновляться при открытии" или "обновлять каждые...мин"...). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 14:45:35 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
Дело в том, что мне не нужно создавать отчет. Мне нужно его просто немного переделать...У меня есть шаблон (Файл прилагается). Почему-то если я создаю похожий файл с аналогичным именем и вставляю в него макрос, он выдает ошибку, связанную с ADODB.Connection и еще вопрос откуда мог взяться этот идентификатор ADODB ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 12:44:38 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
Александр1956Почему-то если я создаю похожий файл с аналогичным именем и вставляю в него макрос, он выдает ошибку, связанную с ADODB.Connection и еще вопрос откуда мог взяться этот идентификатор ADODB в VBA меню "Tools" - > "Referens" надо поставить галку "Microsoft Activex Data Object 2.7 Library" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 13:01:05 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
vkodor Спасибо, заработало! Только все равно в таблицу не переносит больше 19 столбцов.Из-за чего это может быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 13:22:22 |
|
||
|
Нужна помощь
|
|||
|---|---|---|---|
|
#18+
Александр1956 vkodor Спасибо, заработало! Только все равно в таблицу не переносит больше 19 столбцов.Из-за чего это может быть? точно незнаю но может быть дело в этом Александр1956Вот запрос ... --выдать на гора SELECT --позиция в таблице asl.Pos, --позиция в таблице родителя asl.OwnerPos, --уровень вхождения asl.Nesting, --Обозначение (select _PRODUCT from vwObjects where _ID = asl.VerId) as [Обозначение], --наименование (select value from rvwAttributes where idversion = asl.VerId and [name] = 'Наименование') as [Наименование], -- и так далее раз 19 FROM ##asconm_spill_list asl ROLLBACK TRAN GO уж очень цифра похожая ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 13:34:24 |
|
||
|
|

start [/forum/topic.php?fid=61&fpage=324&tid=2184637]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
106ms |
get topic data: |
7ms |
get forum data: |
1ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 362ms |

| 0 / 0 |
