Kendo Grid with grouping automatically jumping to the first matching element - asp.net-mvc

I have a kendo grid which groups by name with a checkbox to select or unselect elements based on a payrollid. A payrollid can appear for multiple names.
A sample of the data would be
1, Fred /
2, Fred /
1, Tom /
1, Mel /
1, Jim /
2, Jim /
2, Joey
…
Now if there are a lot of elements, and I scroll down to the bottom of the page and click on a checkbox to remove the PayrollId 2 for Jim, the grid automatically jumps up to the matching PayrollId 2 for Fred. It's scrolling / jumping to the first element it finds that matches the PayrollId for the checkbox I selected, but I would like it to stay where it is.
Is there a way to remove this functionality?
Thanks,

Try to remove the Navigatable() property of kendo grid and try..I think it will work

Related

Counting correlated checkboxes

If I have a row of checkboxes which indicate especially important columns in a sheet, how do I count for each row how many of the relevant checkboxes are ticked.
For example:
If the top row tells me that I am especially interested in the answers in columns 3, 6, 9, 13 & 15, I would like for each row to do a calculation that tell me how many of the corresponding checkboxes in that row are NOT selected.
In this example, running the calculation on row two should produce a result of 2, as the checkboxes in this row are not selected in the case of the 'important' columns 6 and 13.
The same calculation performed on row three should produce the result 0, as all of the 'important' columns have their checkboxes selected in row 3.
I'm looking for an answer that doesn't require a lot of brute force ANDing or ORing, since the columns are likely to change fairly often. A good answer would have something like the form:
"For this row, how many of the checkboxes between in columns 1 to 19 are unchecked where the corresponding checkbox in row 1 is checked"
(If it helps, the spreadsheet is for comparing product features between different offerings. there's a product on every row, while each column represents a feature. I want to be able to select the 'must have' features in row one, and get a number for each product that tells me how many of the key features it is missing. The contract goes to the reasonably-priced product that returns 0).
tia
Since we are comparing 1st row vs another row, a way to solve this is by using ARRAYFORMULA and subtracting 1st row with the current row.
Since ticked checkboxes are TRUE, it has a numerical value of 1. And if we subtract 1st row and the current row, (the unticked current row is 0) then it will result into 1.
With this in mind, we just need to count how many are there that results to 1.
Final Formula:
=COUNTIF(ARRAYFORMULA(C$1:U$1 - C2:U2), "=1")
Output:
Note:
Since row 3's 3rd column is not ticked, result should be 1 instead of 0 which you mentioned mistakenly in your post above.

How to restrict combobox to show only not-yet-selected items in Google Sheets?

My question is simple, but I am afraid that there is no solution for this.
I want to create 3 combo boxes in 3 lines in a column.
The combo boxes have only 3 values.
If I select an item from the combo box, then the other two combo boxes should have only the remaining 2 items to select.
If I select an item from a second combo box, then the last one should have only the remaining 1 item to select.
If I clear the first combo box selection, then the first and last combo boxes should have only the remaining 2 items to select again.
Is this possible somehow in Google Sheets?
There definitely is a solution for this, you're just going to need some separate formulas.
Reserve 9-12 cells (depending if you want headers) and label them so that you know which dropdown they refer to (i.e. box 1, box 2, box 3).
Under Box 1, simply list your 3 values.
Under Box 2, enter the formula =filter(C2:C4, A1<>C2:C4) replacing C2:C4 with the range of Box 1's three values, and A1 with the cell of the first dropdown box.
Under Box 3, enter the formula =filter(D2:D4, A2<>D2:D4), replacing D2:D4 with the range of Box 2's three values, and A2 with the cell of the second dropdown box.
Now, just insert dropboxes and set the list range to the three ranges from above. The formulas will cause the cell values to change, and in turn change the dropbox values.
And that's it! If you would want them to all be independent, as it seems the last part of your question asks for,(ex. choosing a value in Box 2 first and then Box 1 and 3 changing accordingly) it would just require some longer formulas. I can work on that, but i wanted to get this to you first to be sure this is what you were asking for.
Spreadsheet: https://docs.google.com/spreadsheets/d/15YLW7qL685FJjXKPE0uWTM50YhygpOZqK0UW4u48atI/edit?usp=sharing

Conditionally format a cell based off a selection of drop down data in a column

I created an apparatus maintenance board for my fire department. Each apparatus has its own tab with the name of that apparatus in cell A1.
Each row below that has room to list issues for that apparatus with column D being a drop-down list for the current progress. I want to be able to format the color of the apparatus name is cell A1 based on multiple values from the drop-down list in column D.
Example, when a maintenance issue is not completed we select from the drop-down list in column D of either SERVICE SCHEDULED, PENDING, PARTS ORDERED, etc. I want the apparatus name in A1 to turn red if any cell in column D contains one of those statuses.
With A1 selected, go into Conditional Formatting and Custom formula is.. and enter
=SUMPRODUCT(countif(D:D,{"SERVICE SCHEDULED", "PENDING", "PARTS ORDERED"}))
and select red fill colour.
custom formula:
=COUNTIF(D:D,{"SERVICE SCHEDULED", "PENDING", "PARTS ORDERED"})
Slightly longer than Tom Sharpe's answer (and slightly less easily extensible) but possibly a little simpler since applying only a single function this formula:
=ArrayFormula(or(D:D="SERVICE SCHEDULED",D:D="PENDING",D:D="PARTS ORDERED"))
with choice of red font might suit.

Nightshifts roster example - Auto fill rest days

Need to implement the following and will need some hints on how to accomplish this for our hospitals' department duty roster.
If a staff member has a night shift (first 3 rows, 2-4) then on the following day a resting day should be automatically set ("//" - symbol) on the day shift rows (row >=5).
That "//" symbol should persist in the cell as long as the member is selected on a night shift row - a user should not be able to change or remove that corresponding "//".
However, when plans change and a member is deselected on the night shift row, the "//" symbol should disappear and it should then be possible to set another value on the following day shift cell.
Here is an example sheet to play around.
A14: ={A1:AF4}
A18: ={A5:B8}
paste this into cell C18 and drag it to the right:
=ARRAYFORMULA(IF(IFERROR(VLOOKUP($A$5:$A$8, B2:B4, 1, 0), )<>"", "//",
REGEXREPLACE(C5:C8, "//", "")))
demo sheet
and then just lock down the resulting table so it couldn't be manipulated
or you may wanna use this instead (based on the level of security)
=ARRAYFORMULA(IF(IFERROR(VLOOKUP($A$5:$A$8, B2:B4, 1, 0), )<>"", "//", {C5:C8}))

birt Printing labels paper a4

I'm a newbye in Birt and I'd like to make a report for printing label on a "Printing labels paper" based on an A4 with 20 labels (5 row x 4 col).
I developed the report using 4 tables in a row and each table has a filter like that:
row[0]%4 eq 0 (filter of table 1)
row[0]%4 eq 1 (filter of table 2)
row[0]%4 eq 2 (filter of table 3)
row[0]%4 eq 3 (filter of table 4)
All seems to be ok but I need to insert an input parameter that will contains the starting row for the first page. Ex: user insert 5 as starting row and automatically the report will be start from 5th row of first page. If labels are much more than 4, report will generate the 2th page starting from 1st row and so on.
I tried to set margin on first page but I found the same margin in the next pages too.
Thanks
GG
You could add an empty label just above your table, and add a script in the "onCreate" event of this label, to compute a margin dynamically:
var rowHeight=15;
this.getStyle().marginTop=(params["rowSkipNumber"].value*rowHeight)+"px";
Additionnally you may want to hide this label when the parameter is 0, in its "visibility" property with an expression such:
params["rowSkipNumber"].value==0

Resources