How to combine duplicated rows in tableau - concatenation

I need to remove duplicate rows from showing in the tableau layout.
I cant share too much data, but the image added shows, outlined in blue that the rows are a duplication of each other and so showing the same data twice.
I've tried concatenation but I can only get this to work for one level.
Public workbook
https://public.tableau.com/profile/jaime.hutchins#!/vizhome/DuplicatedRows/Dashboard1

Related

Making manually-added cells automatically move along with imported ranges in Google Sheets?

For data analysis purposes, I need to manually add information in the columns right beside an imported range. It generally doesn't cause any issues and works well. However, whenever the imported data shifts rows (i.e. a new row was added in the middle of the original sheet), the manually-added info no longer matches the data -it either ends up in one row above or below. Basically, it's not in-sync with the needed data.
Is there a way to kind of "fixate" the manually-added information to the same row as the imported data? So that if the order changes in the original sheet, it won't mess up the new one.
I've been using the code shared by #Mogsdad here. However, it is only syncing the info on the "key column" and not the rest of the data in the columns after it.
Attaching screenshots for reference:
This is how it usually looks (the third column is the "key")2
And this is what happens when the rows in the imported range change:3
The code seems to be working, just not for all the columns.

SSRS Selective Page Break

I'm having some formatting issues in SSRS with a current report I'm working on concerning property records. My report is built with 6 tablixes aligned in a landscape view meant to remain in a specific layout for potential printing of the report.
The first Tablix contains general information about the property in question and the owner. This information will be completely static and should remain the same.
The second Tablix is the problem. This Tablix is formatted to pull data from a stored procedure concerning parcels of land and generate up to 13 rows, filling in NULL values if less than 13 rows of data exist. The issue is if MORE than 13 rows of data exist. Currently, the result I have stretches the report and messes up the formatting entirely with 14 or more rows.
There are 4 other tablixes below this Tablix that contain additional details about the property, including buildings, outbuildings, and general appraisal summaries for the property. These will remain the same, as well. Each of these tablixes pulls from its own data set and has a stored procedure to generate the rows as needed.
My goal is to generate a report that contains up to 13 rows of land data on the first page and with any additional rows, keep the same exact page layout, but with the land data Tablix filled with rows 14-26 on a second page. That is, the layout from the first page of the report is repeated but with the remaining rows of data within the land data Tablix.
I've included the layout of the form for reference and I'm currently using Report Builder 2012 with MSSQL. The Land Section Detail is the Tablix in question.
Report View
Honestly, I'm not sure that this is possible, but I'm open to any suggestions on how to make this work.
EDIT: Changed the picture to provide a better idea of what I have.
EDIT: Adding "Sample Data"
Also a Link
Best sample I can offer considering the size of the data set
I once had the same problem to limit the row numbers of a tablix. This description was the solution:
Display a fixed number of rows
I was able to solve this issue with a somewhat complex method, but a method that worked perfectly for the report. The basic idea was to use a temporary table to keep all of the data aligned with a row count and page number in each dataset. With that row count, I was able to determine a cut-off point for each page. For example, if a Tablix had room for 9 rows of data, each of the first 9 rows of data were assigned the page number 1. Rows 10-18 would be assigned page number 2. In this way, I was able to group the report based on the page number.
If no data was assigned to a given page, I had an additional dataset that generated the correct number of blank rows to fill the same gap and maintain the correct page layout.

Excel dynamic offset table with results criteria

I am looking for a way to make a dynamically updated table in excel using a linked data source with filtered results.
What I currently have is a form control scrollbar that is linked to a random cell. That random cell drives an offset function (below) to pull results from the linked data table in another worksheet. All of this works wonderful but I am looking to strip out rows that meet a certain criteria, which I already have calculating to a true/false result in the table itself to make it simple. What I cannot figure out is how to modify my current offset lookup to filter out the results that are false in my calculated column.
=OFFSET(Sheet1!$C2,$I$99,0,1,1)
Sheet1 is where the linked data table is located.
$I$99 is where the cell link for my scrollbar is.
As the scrollbar moves the value in the cell link changes thus updating the offset lookup down the table. I should also state there are 14 rows in my table as well. I will need to filter out the false results but also in turn omit the blank rows as there are over 400 rows in the source table and only about 30 true results in the calculated column.
I unfortunately cannot provide the workbook I am using as it has company sensitive data in it but if it is absolutely needed I can create a filler document with made up data to provide something to work with.
I have looked at advanced filters already and they will not do the trick as they are not dynamic in nature. I would like a non VBA solution as this is a dashboard project that I will be distributing to my team here at work and macros are disabled on our network for security reasons every time an excel is opened so it will become a nuisance.
Let me know if you all need anything else from me.
Figured it out with a little help from a friend, coded each cell to function as an array part and it works like a charm.
{=IFERROR(INDEX(Dashboard_Data[Summary],SMALL(IF(LEFT(Dashboard_Data[Stale],1)="T",IF(Dashboard_Data[Visible],ROW(Dashboard_Data[Visible])-1,""),""),ROW(A1)+$K$18)),"")}

SSRS: Show images from multiple rows at once

From a database I get information about collaborators. The collaborators can have a different number of images. E.g. one collaborator has four images, another one only one. In this example I would get 5 rows in total. Four for the first collaborator, differing only in the image and one row for the other collaborator.
My report should treat all images belonging to the same collaborator as the same result row. So the first collaborator will have four images on its report and the other one only one. At the moment one report per row is created.
How can I tell SSRS that all rows which differ only in the image column belong together and how can I add these images to the report?
I must admit I haven't tried much yet because I don't know where to start. I've read about the previous() function (https://social.msdn.microsoft.com/Forums/sqlserver/en-US/397c92f5-e533-47be-9e07-56ea0b19f9a7/merge-data-from-multiple-rows-into-one-in-ssrs) and the instr() function (multiple images in SSRS Table Cell) but both are so far I see not what I need.
If necessary I guess I could merge the rows already in MSSQL to have one row per collaborator with comma separated images.
The images are not stored as file names but in binary form.
You should be able to utilize groupings to keep the images of the same collaborator together.

SSIS Package that removes or ignores multiple rows in flat file

I'm learning how to develop SSIS packages for ETL systems this week. One of my first objectives is to discover different ways to import flat files into a database. As this is pretty straight forward for the most part, I've been playing around with different flat files that contain a variety of data.
One issue I ran into today was with a Excel document that contained data in the first row, the header information in the second row and foot information in the last couple of rows. What I want to import into the database is the header and all the rows leading up to the footer. I do not want the first row and I do not want the footer.
My current solution is to create a Data Flow task in Advance Settings and OpenRowSet with "Sheet1$A2:I20000". This allows me to open the sheet I want, select the second row (where my header resides) and then select all other rows that are between A2 and I20000.
This solution also allows me to read the header information (which I want) and all the rows that follow for importation. Unfortunately, this also selects the footer rows and doesn't seem optimize for good performance as the package has to scan a massive range of rows regardless if there is data in those rows or not.
The screenshot below contains the Excel sheet that I'm trying to import based on the MS SQL sample database. The rows I want to remove or ignore are circles with the red box. Everything else not circled is what I want to import.
Any thoughts on how I can ignore the first row, read the second row for my header information, read the rows that follow the header for my data set and then ignore the last couple of rows that I'm deeming as the footer?
Addition Information About This File
The first row will never change.
The header row will never change.
The data set after the header will change values, not data types.
The first column of footer will never change.
The second column of footer will change values, not data types.
The rest of the footer columns will never change.
I figured out the solution to my own question.
I used the Conditional Split as shown in my diagram to filter out the rows I didn't need. For example, I put a condition that checks if the first column of data (member_no) was < (less than) a number. If TRUE, it goes to my OLE DB. If False, it goes nowhere. This prevented the "SUM TOTAL" from being passed to the database.
I also edited my start range with 'Sheet1$A2:I' as opposed to 'Sheet1$A2:I20000'. That way the package scans until there is no records to scan and stops (I assume).

Resources