Thursday, March 29, 2012
Combining XML Files using SSIS or T-SQL etc.
Peter DeBetta, MVP - SQL Server
http://sqlblog.com
"Terry" <Terry@.discussions.microsoft.com> wrote in message
news:187DB17A-FA31-4236-844A-7068BE9C072E@.microsoft.com...
> How can I combine all my xml files so it can be processed by SSIS in order
> that I may create a table containing the imported xml files?
>
What is Loop?
Could you please explain more in detail.
Thank you in advance for your assistance.
"Peter W. DeBetta" wrote:
> Loop?
> --
> Peter DeBetta, MVP - SQL Server
> http://sqlblog.com
> --
> "Terry" <Terry@.discussions.microsoft.com> wrote in message
> news:187DB17A-FA31-4236-844A-7068BE9C072E@.microsoft.com...
>
>
|||SSIS now has a Control Flow Item called Foreach Loop Container. You use this
to loop through all the xml files in a specified directory. You will also
need to create a Data Flow Task in the Foreach Loop Container. The samples
that come with SQL Server 2005 have an example of using this container
control, and you can find more info in BOL.
Peter DeBetta, MVP - SQL Server
http://sqlblog.com
"Terry" <Terry@.discussions.microsoft.com> wrote in message
news:5EAFCB63-AC58-4592-A7DF-786AF5CABBBF@.microsoft.com...[vbcol=seagreen]
> What is Loop?
> Could you please explain more in detail.
> Thank you in advance for your assistance.
> "Peter W. DeBetta" wrote:
Combining XML Files
So, the standalone header xml file would look like this:
<document>
<tables>
<header>
<rows>
<row>
<field1>header file 1 info....</field1>
<field2>header file 1 info....</field2>
</row>
</rows>
</header>
</tables>
<document>
and if a detail file was found, then the xml would look like this:
<document>
<tables>
<header>
<rows>
<row>
<field1>header file 1 info....</field1>
<field2>header file 2 info....</field2>
</row>
</rows>
</header>
<detail>
<rows>
<row>
<detfield1>details file 1 info....</detfield1>
<detfield2>details file 2 info....</detfield2>
</row>
</rows>
</detail>
</tables>
<document>
Seeing how you can't easily perform any if logic in a data-flow, what would be the best way to achieve this?
JAson
Are you saying there will be more than one details file? In your example, is detfield2 really supposed to contain a value from the second detail file?
|||sorry, I meant that there would be more than 1 filed in the details file. So,
<detfield1>details file field_1 info....</detfield1>
<detfield2>details file field_2 info....</detfield2>
The tricky part is just to figure out how to manipulate an xml file (like removing just a few end tags, then inserting another xml portion, and replace the end tags that were removed) after it has been created and written to to a destination.
|||Given that there is no "XML Destination" adapter provided with SSIS, I think you're going to have to write one yourself if your goal is to end up with an XML document. If I were in your shoes, I think I'd write a custom, managed (not script) component. I'd give it two inputs: One for the header row, and the other for the detail rows. There's a good sample in BOL that you can use to get started.Tuesday, March 27, 2012
Combining Output PDF files
Is there a way to output reports to the same PDF file. Basicly Appending several reports to the one PDF.
Without combining the reports using subreports, I think you would use code & custom PDF components, unless you want to jump into writing a rendering extension.
Softartisians Officewriter & abcPDF.NET are two possible options. You can also try automating Acrobat.
http://www.planetpdf.com/forumarchive/84747.asp
One alternative may be to export to a different format and then convert to pdf afterwards.
cheers,
Andrew
|||we're trying to do this on the report server with out having to add another process.
Is there any good tutorials for writing a rendering extension? I've heard its difficult.
|||Not sure if it has changed since RS 2000, but here is a comment on how difficult...
http://blogs.msdn.com/bryanke/archive/2004/03/16/90797.aspx
If you want to develop one, it might help to travel to Microsoft's main campus and stay for a month or two while you work alongside Reporting Services developers.
cheers,
Andrew
|||LOL, Yeah I saw that, showed it to my boss. He said no to funding that trip..Oh well...LOL
Doubt they would let me in anyways
But hey if Microsoft wants to use me as a test case, I'm all for it!!! {WINK WINK, NUDGE NUDGE}
Tuesday, March 20, 2012
Combine raw files using range
HI, I have a dataflow that has two raw files as source and I would like to merge them upon a range condition:
RawFile1.Date <= RawFile2.Date
Usually, using tables, I would have used a lookup with partial cache to achieve it. Now, since we cannot use lookup transform with raw files, I was wondering how I could achieve this using raw files as source. Is it possible to merge raw files using merge or merge join?
Thank you,
Ccote
Sure, you can merge two raw files. You can merge any two data flow streams. The data just has to be sorted first.You could load a staging table for each raw file, though, and write a SQL join against them to get your results as well...|||
This appears to be a problem that requires SQL, meaning that both data sets need to be stored in tables. As suggested previously, the data sets can then be joined to yield the desired result set.ccote wrote:
HI, I have a dataflow that has two raw files as source and I would like to merge them upon a range condition:
RawFile1.Date <= RawFile2.Date
Usually, using tables, I would have used a lookup with partial cache to achieve it. Now, since we cannot use lookup transform with raw files, I was wondering how I could achieve this using raw files as source. Is it possible to merge raw files using merge or merge join?
Thank you,
Ccote
I hope this helps.
|||Thank you both for your inputs. I will have to revise the design of this package. I wanted to get rid of the table solution since SSIS is installed on an application server (different than SQL server). By using raw files, I would be able to do all the work locally and at the end send the result to SQL server target table in one pass. I guess merge join are not flexible enough for now, maybe MS will had non equijoin fucntionnality in future version.
Thank you,
Ccote
New feature requests may be submitted here: SQL Server Feedback|||Can you explain what you mean to accomplish by "merge them upon a range condition"?|||ccote wrote:
I guess merge join are not flexible enough for now, maybe MS will had non equijoin fucntionnality in future version.
ccote wrote:
Thank you both for your inputs. I will have to revise the design of this package. I wanted to get rid of the table solution since SSIS is installed on an application server (different than SQL server). By using raw files, I would be able to do all the work locally and at the end send the result to SQL server target table in one pass. I guess merge join are not flexible enough for now, maybe MS will had non equijoin fucntionnality in future version.
Thank you,
Ccote
Yes. The lack of non-equi-join functionality really annoys me. I once enquired why it was not there and was told "nobody has asked for it". Well...it seems people are now asking for it.
A connect submission for this already exists: https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=126376 so please please please click-through, vote and ADD A COMMENT (just voting is next to useless - they need to see real reasons why this needs to be implemented). You can link back to this thread as well.
-Jamie
|||
HI, I would like to be able to do basically the same thing as I can do when I join tables: Be able to join on col1 <= col2. One way to achieve this would be being able to to <= (or <>, <, >, etc.) when I use merge join transform. Or,by being able to lookup against raw files, currently, we can only use lookups transforms against reelational tables. If we could be able to do lookups against raw files, it would be perferct since lookups can have parameters and we can specify the query by using ranges.
Ccote
Combine raw files using range
HI, I have a dataflow that has two raw files as source and I would like to merge them upon a range condition:
RawFile1.Date <= RawFile2.Date
Usually, using tables, I would have used a lookup with partial cache to achieve it. Now, since we cannot use lookup transform with raw files, I was wondering how I could achieve this using raw files as source. Is it possible to merge raw files using merge or merge join?
Thank you,
Ccote
Sure, you can merge two raw files. You can merge any two data flow streams. The data just has to be sorted first.You could load a staging table for each raw file, though, and write a SQL join against them to get your results as well...|||
This appears to be a problem that requires SQL, meaning that both data sets need to be stored in tables. As suggested previously, the data sets can then be joined to yield the desired result set.ccote wrote:
HI, I have a dataflow that has two raw files as source and I would like to merge them upon a range condition:
RawFile1.Date <= RawFile2.Date
Usually, using tables, I would have used a lookup with partial cache to achieve it. Now, since we cannot use lookup transform with raw files, I was wondering how I could achieve this using raw files as source. Is it possible to merge raw files using merge or merge join?
Thank you,
Ccote
I hope this helps.
|||Thank you both for your inputs. I will have to revise the design of this package. I wanted to get rid of the table solution since SSIS is installed on an application server (different than SQL server). By using raw files, I would be able to do all the work locally and at the end send the result to SQL server target table in one pass. I guess merge join are not flexible enough for now, maybe MS will had non equijoin fucntionnality in future version.
Thank you,
Ccote
New feature requests may be submitted here: SQL Server Feedback|||Can you explain what you mean to accomplish by "merge them upon a range condition"?|||ccote wrote:
I guess merge join are not flexible enough for now, maybe MS will had non equijoin fucntionnality in future version.
ccote wrote:
Thank you both for your inputs. I will have to revise the design of this package. I wanted to get rid of the table solution since SSIS is installed on an application server (different than SQL server). By using raw files, I would be able to do all the work locally and at the end send the result to SQL server target table in one pass. I guess merge join are not flexible enough for now, maybe MS will had non equijoin fucntionnality in future version.
Thank you,
Ccote
Yes. The lack of non-equi-join functionality really annoys me. I once enquired why it was not there and was told "nobody has asked for it". Well...it seems people are now asking for it.
A connect submission for this already exists: https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=126376 so please please please click-through, vote and ADD A COMMENT (just voting is next to useless - they need to see real reasons why this needs to be implemented). You can link back to this thread as well.
-Jamie
|||
HI, I would like to be able to do basically the same thing as I can do when I join tables: Be able to join on col1 <= col2. One way to achieve this would be being able to to <= (or <>, <, >, etc.) when I use merge join transform. Or,by being able to lookup against raw files, currently, we can only use lookups transforms against reelational tables. If we could be able to do lookups against raw files, it would be perferct since lookups can have parameters and we can specify the query by using ranges.
Ccote
Combine multiple RDL files into one RDL file
Hello,
I need to generate a report, which should display 4 reports. Two tables and some charts. I have all these reports (I mean the .RDL files) individually. I can render the reports separately. But, now the need is to combine these reports in the one RDL file. Is this possible? If yes, how?
Also, I tried to create a stored procedure, which would call all these 4 SP inturn and provide 4 result sets. I thought of have an RDL by calling only this SP which would give 4 result sets. But infortunately, it gave only the first SP's result set. So, I have to combine the 4 RDL files into one to show on the Reporting Console. Can anyone please help me in this? Help would be grately appreciated.
Thanks a lot. Let me know if the question is not clear.
Mannu.
Well let's see.
You would need to create 4 datasets, one for each of the original reports. You can do this on the data tab by clicking the dataset drop down and Add new dataset.
Then, copy and paste each of the individual layouts into this "super" report.
On each of the tables and charts, go to the properties for the table or chart and select the appropriate dataset as the "dataset name" that you created.
|||Yes GregSQL gives you right approach for the problem but there is a catch.
If you create 4 datasets using same SP that will still give you the first resultset. To overcome this issue I believe you have to pass an extra parameter say ReportType with datatype as Char. Give a condition in SP to return the Dataset you want to return for that perticular ReportType.
IN StoredProcedure:
IF @.ReportType = 'A'
BEGIN
YOUR DATASET
END
IF @.ReportType = 'B'
BEGIN
YOUR DATASET
END
Comming to report , click on each Dataset and go to Parameters section and give the ReportType value for each dataresult.'A' for First Dataset, 'B' for Second Datset.
I think this will complete the whole scenario...
Hope this helps
Sunday, March 11, 2012
COM security Policy
COM+ application in order to run as a domain user to access files on the
network but every time I try running this code it errors out with a security
permission error. How do I setup permission to access the COM+ application?
--
RYAN SCHOUTENNever mind this is not an issue
--
RYAN SCHOUTEN
"RYAN SCHOUTEN" <ryanttr@.yahoo.com> wrote in message
news:uyU736ERFHA.2744@.TK2MSFTNGP10.phx.gbl...
> I am trying to create a data extension and this extension has to access a
> COM+ application in order to run as a domain user to access files on the
> network but every time I try running this code it errors out with a
security
> permission error. How do I setup permission to access the COM+
application?
> --
> RYAN SCHOUTEN
>
Thursday, March 8, 2012
ColumnNamesInFirstDataRow Expression
I have a SSIS package I am trying to create that will accept two types of files. They are the same exact file except for one contains a header and one does not. So I setup a conneciton manager to the csv file. I then set a variable of bool type, and then assigned that to the ColumNamesInFirstDataRow expressions property of the conneciton manager.
So the pacakge runs. Loops a directory, runs a script that sets the Header variable to true/false based on the file name. But when it gets to the data flow it always ignores the property and never bypasses the header row. The variable is being set. I tried datarowstoskip and set it to 1 instead of the above mentioned property, and that does not work either.
How can I accomplish this?
There is a known bug in evaluation of flat file connection properties that might be causing this. IT is scheduled to be fixed for the next release. Unfortunately, I do not see an easy workaround...
-Bob
|||Is there any know work around to this with .net code or anything else?|||You could set up two connection managers (one with headers, one without) and two dataflows to match, and use a script task to check the file for a header row. Then use precedence constraints to pick the data flow to execute.
Or you could parse the whole file in a script source, but that could be a lot of work, depending on the complexity of your file.
ColumnNamesInFirstDataRow Expression
I have a SSIS package I am trying to create that will accept two types of files. They are the same exact file except for one contains a header and one does not. So I setup a conneciton manager to the csv file. I then set a variable of bool type, and then assigned that to the ColumNamesInFirstDataRow expressions property of the conneciton manager.
So the pacakge runs. Loops a directory, runs a script that sets the Header variable to true/false based on the file name. But when it gets to the data flow it always ignores the property and never bypasses the header row. The variable is being set. I tried datarowstoskip and set it to 1 instead of the above mentioned property, and that does not work either.
How can I accomplish this?
There is a known bug in evaluation of flat file connection properties that might be causing this. IT is scheduled to be fixed for the next release. Unfortunately, I do not see an easy workaround...
-Bob
|||Is there any know work around to this with .net code or anything else?|||You could set up two connection managers (one with headers, one without) and two dataflows to match, and use a script task to check the file for a header row. Then use precedence constraints to pick the data flow to execute.
Or you could parse the whole file in a script source, but that could be a lot of work, depending on the complexity of your file.
Friday, February 24, 2012
Column metadata from Connection Manager programmatically
Hi all!
My problem I've been struggling with is the following. I have a set of text files (around 70), each with different column numbers and types. I define Flat File Connection Managers for each of them where I can nicely rename, set data types and omit certain columns. I do this once and this will be the basis for the rest of the data process (would be nice programmatically too actually).
I would like to pump each of these text files into SQL Server tables using CREATE TABLE and BULK INSERT (because do it one-by-one is really a pain). The question is:
is there a way to obtain column information (Script Task) from a Connection Manager so I can run CREATE TABLE-s? I just need the names, data type for each nothing fancy...
(I bumped into interfaces like IDTSConnectionManagerFlatFileColumns90, which I cannot handle from the Script Task.)
Any help appreciated!
What your asking is a design-time action, not run-time, and could be done if you load the package and walk round the object model. If using BULK INSERT, then why bother with SSIS Flat File Connections at all?|||Thanks for the answer. That is exactly I cannot achieve:
Dim mgr As ConnectionManager = Dts.Connections(1)
Dim o As Object = mgr.Properties("Columns").GetValue(mgr)
This returns something (COM IDTSConnectionManagerFlatFileColumns90?) that I cannot handle more. Or am I on the wrong track? Do I need more assemblies and references?
The other question: I've found it very comfortable to define flat file structure using Flat File Connections (UI, data types). On the other hand I need a CREATE TABLE based on a flat file structure. Other ideas maybe?
|||
What I said was that this was probably not the right way to do this. The Script task is using run-time.
If you try and use IDTSConnectionManagerFlatFileColumns90 then you will need another reference. Just look it up in Books Online and it wiull tell you that it is in the Microsoft.SqlServer.DTSRuntimeWrap assembly, so add this reference.
Dim conn As ConnectionManager = Dts.Connections(0)
Dim o As Object = conn.Properties("Columns").GetValue(conn)
Dim xx As Wrapper.IDTSConnectionManagerFlatFileColumns90 = CType(o, Wrapper.IDTSConnectionManagerFlatFileColumns90)
Dim dt As Wrapper.DataType = xx.Item(0).DataType
Dim w As Integer = xx.Item(0).MaximumWidth
The above code seems to work.
|||Hi darren, how do you get the column name? The Wrapper.IDTSConnectionManagerFlatFileColumns90 doesn't have any 'name' member.
Also, i'm trying to do the reverse of this process, which is to add columns to the connection programmatically? How do i go about this?
I've come as close as getting adding the column into the wrapper.idtsconnectionmanagerflatfilecolumns90 collection, but i have no way of adding a 'name' to it? How do i do that? Here's my code:
dim conn2 as idtsconnectionmanager90 = pkg.connections("FlatFileConn").value
Dim conn3 As Wrapper.IDTSConnectionManagerFlatFile90 = CType(conn2.InnerObject, Wrapper.IDTSConnectionManagerFlatFile90)
Dim mynewcol1 As Wrapper.IDTSConnectionManagerFlatFileColumn90mynewcol1 = conn3.Columns.Add
mynewcol1.DataType = Wrapper.DataType.DT_BOOL
mynewcol1.ColumnDelimiter = "~"
'<< This is where i can't add the 'name' >>
Some code would be really helpful.
Thanks.
|||Try the following code after you add the mynewcol1
Dim name As Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSName90
name = TryCast(mynewcol1, Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSName90)
name.Name = "ColumnName"
Column metadata from Connection Manager programmatically
Hi all!
My problem I've been struggling with is the following. I have a set of text files (around 70), each with different column numbers and types. I define Flat File Connection Managers for each of them where I can nicely rename, set data types and omit certain columns. I do this once and this will be the basis for the rest of the data process (would be nice programmatically too actually).
I would like to pump each of these text files into SQL Server tables using CREATE TABLE and BULK INSERT (because do it one-by-one is really a pain). The question is:
is there a way to obtain column information (Script Task) from a Connection Manager so I can run CREATE TABLE-s? I just need the names, data type for each nothing fancy...
(I bumped into interfaces like IDTSConnectionManagerFlatFileColumns90, which I cannot handle from the Script Task.)
Any help appreciated!
What your asking is a design-time action, not run-time, and could be done if you load the package and walk round the object model. If using BULK INSERT, then why bother with SSIS Flat File Connections at all?|||Thanks for the answer. That is exactly I cannot achieve:
Dim mgr As ConnectionManager = Dts.Connections(1)
Dim o As Object = mgr.Properties("Columns").GetValue(mgr)
This returns something (COM IDTSConnectionManagerFlatFileColumns90?) that I cannot handle more. Or am I on the wrong track? Do I need more assemblies and references?
The other question: I've found it very comfortable to define flat file structure using Flat File Connections (UI, data types). On the other hand I need a CREATE TABLE based on a flat file structure. Other ideas maybe?
|||
What I said was that this was probably not the right way to do this. The Script task is using run-time.
If you try and use IDTSConnectionManagerFlatFileColumns90 then you will need another reference. Just look it up in Books Online and it wiull tell you that it is in the Microsoft.SqlServer.DTSRuntimeWrap assembly, so add this reference.
Dim conn As ConnectionManager = Dts.Connections(0)
Dim o As Object = conn.Properties("Columns").GetValue(conn)
Dim xx As Wrapper.IDTSConnectionManagerFlatFileColumns90 = CType(o, Wrapper.IDTSConnectionManagerFlatFileColumns90)
Dim dt As Wrapper.DataType = xx.Item(0).DataType
Dim w As Integer = xx.Item(0).MaximumWidth
The above code seems to work.
|||Hi darren, how do you get the column name? The Wrapper.IDTSConnectionManagerFlatFileColumns90 doesn't have any 'name' member.
Also, i'm trying to do the reverse of this process, which is to add columns to the connection programmatically? How do i go about this?
I've come as close as getting adding the column into the wrapper.idtsconnectionmanagerflatfilecolumns90 collection, but i have no way of adding a 'name' to it? How do i do that? Here's my code:
dim conn2 as idtsconnectionmanager90 = pkg.connections("FlatFileConn").value
Dim conn3 As Wrapper.IDTSConnectionManagerFlatFile90 = CType(conn2.InnerObject, Wrapper.IDTSConnectionManagerFlatFile90)
Dim mynewcol1 As Wrapper.IDTSConnectionManagerFlatFileColumn90mynewcol1 = conn3.Columns.Add
mynewcol1.DataType = Wrapper.DataType.DT_BOOL
mynewcol1.ColumnDelimiter = "~"
'<< This is where i can't add the 'name' >>
Some code would be really helpful.
Thanks.
|||Try the following code after you add the mynewcol1
Dim name As Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSName90
name = TryCast(mynewcol1, Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSName90)
name.Name = "ColumnName"
Column metadata from Connection Manager programmatically
Hi all!
My problem I've been struggling with is the following. I have a set of text files (around 70), each with different column numbers and types. I define Flat File Connection Managers for each of them where I can nicely rename, set data types and omit certain columns. I do this once and this will be the basis for the rest of the data process (would be nice programmatically too actually).
I would like to pump each of these text files into SQL Server tables using CREATE TABLE and BULK INSERT (because do it one-by-one is really a pain). The question is:
is there a way to obtain column information (Script Task) from a Connection Manager so I can run CREATE TABLE-s? I just need the names, data type for each nothing fancy...
(I bumped into interfaces like IDTSConnectionManagerFlatFileColumns90, which I cannot handle from the Script Task.)
Any help appreciated!
What your asking is a design-time action, not run-time, and could be done if you load the package and walk round the object model. If using BULK INSERT, then why bother with SSIS Flat File Connections at all?|||Thanks for the answer. That is exactly I cannot achieve:
Dim mgr As ConnectionManager = Dts.Connections(1)
Dim o As Object = mgr.Properties("Columns").GetValue(mgr)
This returns something (COM IDTSConnectionManagerFlatFileColumns90?) that I cannot handle more. Or am I on the wrong track? Do I need more assemblies and references?
The other question: I've found it very comfortable to define flat file structure using Flat File Connections (UI, data types). On the other hand I need a CREATE TABLE based on a flat file structure. Other ideas maybe?
|||
What I said was that this was probably not the right way to do this. The Script task is using run-time.
If you try and use IDTSConnectionManagerFlatFileColumns90 then you will need another reference. Just look it up in Books Online and it wiull tell you that it is in the Microsoft.SqlServer.DTSRuntimeWrap assembly, so add this reference.
Dim conn As ConnectionManager = Dts.Connections(0)
Dim o As Object = conn.Properties("Columns").GetValue(conn)
Dim xx As Wrapper.IDTSConnectionManagerFlatFileColumns90 = CType(o, Wrapper.IDTSConnectionManagerFlatFileColumns90)
Dim dt As Wrapper.DataType = xx.Item(0).DataType
Dim w As Integer = xx.Item(0).MaximumWidth
The above code seems to work.
|||Hi darren, how do you get the column name? The Wrapper.IDTSConnectionManagerFlatFileColumns90 doesn't have any 'name' member.
Also, i'm trying to do the reverse of this process, which is to add columns to the connection programmatically? How do i go about this?
I've come as close as getting adding the column into the wrapper.idtsconnectionmanagerflatfilecolumns90 collection, but i have no way of adding a 'name' to it? How do i do that? Here's my code:
dim conn2 as idtsconnectionmanager90 = pkg.connections("FlatFileConn").value
Dim conn3 As Wrapper.IDTSConnectionManagerFlatFile90 = CType(conn2.InnerObject, Wrapper.IDTSConnectionManagerFlatFile90)
Dim mynewcol1 As Wrapper.IDTSConnectionManagerFlatFileColumn90
mynewcol1 = conn3.Columns.Add
mynewcol1.DataType = Wrapper.DataType.DT_BOOL
mynewcol1.ColumnDelimiter = "~"
'<< This is where i can't add the 'name' >>
Some code would be really helpful.
Thanks.
|||Try the following code after you add the mynewcol1
Dim name As Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSName90
name = TryCast(mynewcol1, Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSName90)
name.Name = "ColumnName"
Sunday, February 19, 2012
Column Header Problems in PDF exports
Most of these are quite large files and span numerous pages. The first 3 - 4
pages of the report look great, then after that the column header is pushed
down into the first data row of the report.
Has anyone run into this or know of a workaround etc.?
Thanks in advance.this is a known microsoft bug is what i found out
"comet61" wrote:
> Hi. I have some matrix style reports that many customers export to PDF.
> Most of these are quite large files and span numerous pages. The first 3 - 4
> pages of the report look great, then after that the column header is pushed
> down into the first data row of the report.
> Has anyone run into this or know of a workaround etc.?
> Thanks in advance.
Friday, February 10, 2012
Collation problem
I need to correct some data in my SQL database due to a collation error
when I did the DTS from Paradox files to my SQL database I was using the "(Server default)" collation and now the extracted data has some weird chars
I need to use a Portuguese (Brazilian) collation, can i fix the error without loosing my curent data? If yes, how can I do it
Thanks!Marcus,
You can use ALTER TABLE xxx ALTER COLUMN yyy COLLATE collation_name
You should read the COLLATE topic. Whether you get what you want will
depend on whether some characters were remapped during the load into the
(server default) collation. (I don't think so.) You will have to drop
any indexes, statistics, etc. that you created on the columns.
Russell Fields
http://www.sqlpass.org/
2004 PASS Community Summit - Orlando
- The largest user-event dedicated to SQL Server!
"Marcus" <anonymous@.discussions.microsoft.com> wrote in message
news:DD900B9F-5D44-4ACE-9DAC-139EEC85591A@.microsoft.com...
> Hi!
> I need to correct some data in my SQL database due to a collation error!
> when I did the DTS from Paradox files to my SQL database I was using the
"(Server default)" collation and now the extracted data has some weird
chars!
> I need to use a Portuguese (Brazilian) collation, can i fix the error
without loosing my curent data? If yes, how can I do it?
>
> Thanks!