This article seemed fairly accurate to me.
Suggests that the pattern of the best & brightest individuals for the last couple of generations going to business schools & then financial services has been fairly deleterious to society as a whole.
Sunday, January 25, 2009
Saturday, December 6, 2008
Sorting a protected list in excel
As far as I can determine there is no way to use excel's standard sort function while a sheet is protected. The reason being that a sort is effectively moving rows around, which breaks the editing locked cell restriction.
Nevertheless, a search around the net suggests the best way to do this is to use a macro to un-protect the sheet, run the sort & then re-protect the sheet. The first way that I've done this is to add two buttons to my worksheet to sort a particular range ("data") dependent on what column the user currently has selected.
Here's the code:
Private Sub cmdSortAsc_Click()
Private Sub cmdSortDesc_Click()
Private Sub cmdSort(order As Long)
'unprotect the sheet
ActiveSheet.Unprotect Password:="sunshine"
'calculate required parameters
Dim current_cell As String 'the currently selected cell
Dim current_column As String 'the column of the currently selected cell
Dim data_range_address As String 'the address of the "data" range
Dim top_row As String 'the top row of the "data" range
current_cell = ActiveCell.Address
current_column = Left(current_cell, InStr(InStr(current_cell, "$") _
data_range_address = Range("data").Address
top_row = Mid(data_range_address, InStr(InStr(data_range_address, "$") + 1, _
'sort using the calculated parameters
Range("data").Sort Key1:=Range(current_column + top_row), Order1:=order
'snap the selection to the active cell to show user what was used to select
ActiveCell.Select
're-protect the sheet
ActiveSheet.Protect Password:="sunshine"
End Sub
Nevertheless, a search around the net suggests the best way to do this is to use a macro to un-protect the sheet, run the sort & then re-protect the sheet. The first way that I've done this is to add two buttons to my worksheet to sort a particular range ("data") dependent on what column the user currently has selected.
Here's the code:
Private Sub cmdSortAsc_Click()
cmdSort (xlAscending)
End SubPrivate Sub cmdSortDesc_Click()
cmdSort (xlDescending)
End SubPrivate Sub cmdSort(order As Long)
'unprotect the sheet
ActiveSheet.Unprotect Password:="sunshine"
'calculate required parameters
Dim current_cell As String 'the currently selected cell
Dim current_column As String 'the column of the currently selected cell
Dim data_range_address As String 'the address of the "data" range
Dim top_row As String 'the top row of the "data" range
current_cell = ActiveCell.Address
current_column = Left(current_cell, InStr(InStr(current_cell, "$") _
+ 1, current_cell, "$") - 1)
data_range_address = Range("data").Address
top_row = Mid(data_range_address, InStr(InStr(data_range_address, "$") + 1, _
data_range_address, "$") + 1, _
InStr(data_range_address, ":") - InStr(InStr(data_range_address, "$") + 1, _
data_range_address, "$") - 1)
InStr(data_range_address, ":") - InStr(InStr(data_range_address, "$") + 1, _
data_range_address, "$") - 1)
'sort using the calculated parameters
Range("data").Sort Key1:=Range(current_column + top_row), Order1:=order
'snap the selection to the active cell to show user what was used to select
ActiveCell.Select
're-protect the sheet
ActiveSheet.Protect Password:="sunshine"
End Sub
Tags:
Excel,
protection,
sorting,
vba
Tuesday, November 25, 2008
Access: Using a combo or list box to navigate a form's record set
You'd expect access to have some of this functionality out of the box (.net does).
Not to worry, here's the code that seems to work:
Not to worry, here's the code that seems to work:
Private Sub StdNoList_AfterUpdate()
Dim rs As DAO.Recordset
If Not IsNull(Me.StdNoList) Then
If Me.Dirty Then Me.Dirty = False
Set rs = Me.RecordsetClone
rs.FindFirst "pricing_id = " & Me.StdNoList & ""
If rs.NoMatch Then
MsgBox "Not Found"
Else
Me.Bookmark = rs.Bookmark
End If
End If
Set rs = Nothing
End Sub
Friday, November 21, 2008
Crystal: passing parameters to child reports
Say you only want to ask the user for a report parameter once and want to use the parameter in multiple reports. The best way I've found to do this is:
- Create the parameter in the parent report
- Link the parameter to any ole field in the child report
- Remove the parameter in any selection criteria in the child report (unless you do really want it used)
- Consume the parameter in calculated fields
Thursday, November 20, 2008
Crystal: summarising formula fields
For some crazy reason, it seems that Crystal won't easily let you summarise (sum, average, etc) calculated values. After trawling the net for a while I managed to come up with the following 'hack' to achieve this.
- Create a calculated field that clears an array variable & returns "";
- Insert this field into a group or report header;
- Create a calculated field that re-dimensions the array variable with an extra element, adds the calculated value to the array & returns "";
- Insert this field into a details line;
- Create a calculated field that summarises the array variable & return this out put;
- Insert this field into a group or report header.
Workforce analytics - developmental stages
Just came across this article by infohrm discussing the development of workforce analytics / metrics in organisations.
I particularly liked the descriptions given for each of the 'developmental phases':
Phase 1: Service Provider: Organisations at Phase 1 are primarily reactive in their approach, with a workforce reporting team that responds to ad-hoc requests for transactional data, prepares one dimensional performance reports and maintains HR databases.
Phase 2: Business Enabler: These organisations are seeking to improve data efficiency, the team provides reporting self service for end users, places a focus on data accuracy and consistency, and automates common information requests.
Phase 3: Business Partner: At stage three a shift occurs whereby the focus is on engaging with the business rather than just supporting it. The team moves beyond reporting to provide support for integrating data into business planning processes, and takes steps toward identifying workforce trends.
Phase 4: Business Driver: Building on the experience gained in Phase 3, the team shifts its focus toward issue analytics and workforce planning to quantify the impact of human capital on the business and forecast the future workforce. The first two stages can be met by a successful data implementation and roll out of reports and dashboards to the users. A shift occurs in the second two phases whereby there is a cultural change within Human Resources.
Tags:
Analytics,
hr metrics,
Reporting
Tuesday, November 18, 2008
Crystal: sharing variables between sub and main reports
Crystal reports is none to friendly when it comes to incorporating information from sub queries. It appears that the best way to do this is to create a sub report with a shared variable that you can then make use of in the parent report. While you can include this variable in calculations, it appears that you can’t summarise (sum / average / etc) the variable.
Here is the step-by-step guide I came across at https://boc.sdn.sap.com/node/251
Synopsis
A report contains a subreport. Data from the subreport is required for calculations in the main report.
How can you share subreport data with the main report in version 7 (or higher) of the Crystal Reports Designer?
Solution
Shared variables, introduced in Crystal Reports version 7, make it easier to pass values from a subreport to the main report. Using shared variables requires two formulas: one to store the value in a shared variable, the other to retrieve the value from the shared variable.
The most important thing to remember when using shared variables is that Crystal Reports must first evaluate the formula where the value is stored before evaluating the formula that retrieves the shared variable.
For example if you want to pass a grand total from the subreport to do a calculation in the main report, follow these steps:
1. In the subreport, create a formula similar to the one below:
//@SubFormula
//Stores the grand total of the
//{Orders.Order Amount} field
//in a currency variable called 'myTotal'
WhilePrintingRecords;
Shared CurrencyVar myTotal := Sum ({Orders.Order Amount})
2. Place this formula in your subreport.
3. In the main report, create a formula that declares the same variable name:
//@MainFormula
//Returns the value that was stored
//in the shared currency variable called
//myTotal in the subreport
WhilePrintingRecords;
Shared CurrencyVar myTotal;
myTotal
4. Place @MainFormula in a main report section that is beneath the section containing the subreport.
NOTE:======
For the shared variable to return the correct value in the main report, you must place @MainFormula in a main report section that is beneath the section containing the subreport. This ensures Crystal Reports evaluates the @SubFormula before @MainFormula.
One way to do this is to insert a section below the section containing the subreport, and place @MainFormula in this new sub-section:
· On the 'Format' menu, click 'Section'.
· On the 'Sections' list, click the section containing the subreport.
· Click 'Insert' (at top of dialog box). This inserts an additional subsection.
· Click 'OK' to return to the report, and insert @MainFormula into this new sub-section.
The next time you preview the report, @MainFormula displays the value from the subreport. In this particular example, that value was the grand total of the {Orders.Order Amount} field.
============
5. Once you have verified that @MainFormula is returning the correct value from the subreport, you can include this formula in other main report formulas, such as:
//@NewFormula
//includes data from subreport
{@MainFormula}+ Sum ({Customer.Last Year's Sales})
· Place this formula in the same section as @MainFormula, or in a section further down on the report.
You have now successfully shared data from a subreport with the main report.
NOTE: =====
This is not possible with On Demand Subreports in Crystal Reports.
Tuesday, October 21, 2008
Stemming the tide of title inflation
McLagan have just released an interesting article on the dangers of inflated job titles in the work place.
Apart from the compensation cost consequences, the author highlights the issues of:
Apart from the compensation cost consequences, the author highlights the issues of:
- reduced employee moral as more junior employees have no development path, due to bloat at the top end;
- and the stagnation that occurs when over-promoted individuals are effectively 'chained' to their employers (which isn't good for anyone involved).
Tags:
Job titles,
Promotions
Getting rid of the performance review
Just came across this popular article in the Wall Street Journal.
It somewhat inelegantly makes the case that performance and compensation reviews are flawed because of their one-sided nature. It then argues for the introduction of performance 'previews' which are effectively just performance previews with more of a participatory element. This just sounds like best-practice performance review / development planning; so I'm hardly convinced. No
All in all, this guy (Samuel A. Culbert) needs to get out of academia and into the real world - nevertheless, a thought provoking read.
It somewhat inelegantly makes the case that performance and compensation reviews are flawed because of their one-sided nature. It then argues for the introduction of performance 'previews' which are effectively just performance previews with more of a participatory element. This just sounds like best-practice performance review / development planning; so I'm hardly convinced. No
All in all, this guy (Samuel A. Culbert) needs to get out of academia and into the real world - nevertheless, a thought provoking read.
Saturday, July 5, 2008
Signposts of an 'ideal' process
Please forgive the lack of references, but I thought it might be an idea to jot down some of my thoughts on the signposts of an 'ideal' process.
- The responsibilities of all the actors are clearly articulated and represented. I.e., all the relevant people know what they're supposed to be doing (preferably with timeframes noted) and it is obvious who's doing what.
- Work flows seemlessly from one actor to the next as a part of the process itself. I.e., there should not be a seperate system to manage work flow.
- Actor's interactions with processes are highly transparent / observable. I.e., not only is it clear who's doing what now, but who did what and when.
- Beyond people doing the work required by the process (e.g., making a decision on something) there should be no additional human activity. I.e., seperate administrators should not be required to action the decisions made by others. The decisions should be stored within the processes themselves and actioned by automation.
- People will easily have all the information required to work on a given process. Ususally this will mean that the information is presented within the process.
- Working in the process is as easy as possible. I.e., user experience matters.
- The process is as simple as possible.
- Work is be performed along reporting lines and in an actor's key responsibility areas. E.g., if person x reports to y and is performing work on a process that x nor y has no responsibility for then problems will inevitably arise. I.e., responsibilities should not only be clear, but they should make sense.
- Work is as centralised as is possible / sensible.
- Activity does not jump backwards and forwards between the same actors. I.e., processes should be streamlined.
- The work done by the process will be self-audited within the process. I.e., activities of manager y will effectively audit the work of manager x and the generation of output b will be the final audit as it is verified by manager x before delivery to employee m.
Wednesday, July 2, 2008
Talent Management - Why Employer Brand is Critical to Retention and Engagement
I recently came across this article at talentmgt.com which does a great job at making the case for the importance of a strong employer as well as consumer brand.
Of course this is likely old hat to you, but the value of the article is in that it outlines some solid steps to strengthening your employer brand. Some ideas I particularly agreed with / liked are:
Of course this is likely old hat to you, but the value of the article is in that it outlines some solid steps to strengthening your employer brand. Some ideas I particularly agreed with / liked are:
- Linking an employer brand to your consumer brand
- The usefulness to well-designed onboarding programmes
- Importance of getting performance expectations aligned with brand (i.e., vision + culture + values)
- Value of having employees as brand ambassadors to clients + potentially employees + new hires
Tags:
Employment Brand,
engagement
Tuesday, June 24, 2008
Does Generational Difference Matter?
I like this article on generational differences in the work place. Yes, this topic has been done to death, but it summarises many of my thoughts on the topic (which in a nutshell is that generational differences don't really exist but people at different life-stages naturally have different outlooks)
To summarise some of these points:
Similarities
To summarise some of these points:
Similarities
- Everyone wants respect
- Trust matters
- People want leaders who are credible
- Organisational politics is a problem - no matter how old / young you are
- No one really likes change
- Loyalty depends on the context, not on the generation
- It's as easy to retain a young person as it is to retain an older one - if you do the right things(don't necessarily agree with this one - but perhaps that my personal experience)
- Almost everyone wants a coach (again, not 100% sure about this one. I don't disagree though)
- Longevity - young people are more mobile (which, to me, contradicts the second to last point above)
- How knowledge gets transferred (I've come across this a lot)
- Expectations of work
Tags:
Generations,
Workforce
Reporting on HR function performance
Here is a small whitepaper on PWC's offerings in the HR benchmarking area as based on the Saratoga Institute's HR metric list. Of course, you could get PWC to come & benchmark your HR performance for you. Or you could just do what I would do & develop my own bases for automated reporting on the metrics listed.
For further ideas I came across this summary of Kaplan and Norton's balanced scorecard approach to business reporting, which I thought could be adapted nicely to this situation.
For further ideas I came across this summary of Kaplan and Norton's balanced scorecard approach to business reporting, which I thought could be adapted nicely to this situation.
Tags:
HR,
Metrics,
Performance,
Reporting
Monday, June 23, 2008
Guide to Leadership Assessments
Here's a nice list of leadership assessments. It includes the MBTI inventory and DISC profiles, which I've done in team environments (both relatively successfully).
Tags:
Assessment,
DISC,
Leadership,
MBTI,
team building
New Zealand scores well on Mercer's QoL index
Hot of the press are Mercer's new Quality of Living and Cost of Living indicies for 2008.
Auckland comes in really well at number 5 in the Quality of Living stakes. Other Asia-Pacific cities did well with Sydney at 10th, Wellington at 12th and Melbourne, Perth and Adelaid at 17th place.
From the press release:
New Zealand cities have continued to lead worldwide quality of living standards, making them attractive destinations for overseas expatriates, Mercer’s 2008 Worldwide Quality of Living Index has found.
Both major New Zealand cities surveyed, Auckland and Wellington, rank among the world’s top 15 cities for overall quality of living and dominate the rankings within the Asia Pacific region.
Mercer’s head of information product solutions, Mr Rob Knox, said the results were great news for New Zealand employers trying to attract overseas workers to help ease pressure on possibly the worst skills shortage New Zealand has ever seen.
Tags:
Mercer,
New Zealand,
Quality of Living
Subscribe to:
Posts (Atom)