How to Read FPM Events in WDDOBEFOREACTION
Dear All,
I am working on a GAF solution. If the user clicks the PREV or EXIT buttons I want to skip the Check the mandatory field validations. But do not know how to read the FPM Events inside the WDDOBEFOREACTION method inside the View.
Any help is greatly appreciated.
Thank you.
PK
Hi,
Below code can be used to get the current executed FPM event.
DATA io_event type cl_fpm_event.
io_event = wdevent->get_string( 'ID' ).
io_event will have the Event which is being triggered.
FPM event can be captured in WDDOBEFOREACTION, but since this hook method is invoked before any events in the view, so it will throw a dump , if any action is triggered other FPM event.
So it is better to write the validation in Component controller method,(ON_PROCESS ), if we want to Validate based on prev and next buttons.
DATA io_event type cl_fpm_event.
CASE io_event->mv_event_id .
WHEN cl_fpm_event=>'NEXT'. " Global constants can be declared like gc_event_edit,etc
Endcase.
Regards,
Harsha J
Similar Messages
-
How to use FPM event in Launchpad Folder
Hello Experts,
We have a requirement in which we want to navigate to the Service on clicking the folder name of the launchpad. As this folder is going to have only one service inside it , it does not make any sense to go inside the folder and then access the service by clicking on the service link.
Do you have any suggestions how we can do this.
I was expecting that we can use the 'FPM Event ID' of the Launchpad folder for this , but now sure how to use it.
Please let me know how we can do this , and if this can be done by 'FPM Event ID' how to do that.
Attached is image about the 'FPM Even ID' which i think i can use.
Thanks
Amolcheck this document on Actions configurations in Launchpad
https://help.sap.com/erp_hcm_ias_2013_01/helpdata/en/5f/b1aa2dcdd54783b6ee557ce1abcb8e/content.htm?frameset=/en/63/61982… -
How to read iCal events from SQLite Cache file?
I need to figure out how to read event entries in the Cache file stored in /Library/Calenders/ as my actual events have been corrupted due to a file system problem. The example below shows the information I have for each entry, where the event in the entry was Bon Jovi Concert, however I am confused how I can read the date and time of the event, information I believe is stored as 218215639,219613081,219524400,219540600. Any help is greatly appreciated.
INSERT INTO "ZCALENDARITEM" VALUES(0,NULL,0,NULL,0,5,NULL,6,4039,NULL,0,0,0,0,0,0,2,23,0,0,0,0,6,0,21821563 9,219613081,219524400,219540600,NULL,NULL,NULL,NULL,NULL,'local_AFB8D342-2DAE-4F A1-A9A6-3FA9B28B5C7C','Bon Jovi Concert',NULL,NULL,NULL,'Europe/London',NULL,'0E17BBB6-0E76-4024-8DD7-60E43D38D 35B');OK, here we go ... I hope. I have tried it on my iCal, with about 2000 entries, and it worked. I cannot guarantee that it will work for you.
Make a new text file from sql as before, but using this modified command to get additional data for each event:
sqlite3 Desktop/Hope 'select ZSTARTDATE, ZCALENDARITEM.ZTITLE, ZENDDATE, ZNODE.ZTITLE, ZISALLDAY, ZRECURRENCERULE, ZISDETACHED from ZCALENDARITEM inner join ZNODE on ZCALENDARITEM.ZCALENDAR = ZNODE.Z_PK where ZSTARTDATE not null' >hope.txt
I suggest you make a new user account, then copy the text file hope.txt and the script to the Public/Drop Box folder for that account. Log on to the new account and copy the two files from the drop box to the Desktop. Start iCal and make new calendars to match those in your ordinary account. Double click the script to open it in Script Editor and CHANGE THE DATE RANGE in the "set ThePeriod" line. Stand well back and click the run button. Every 50 records processed it will pop up a progress box, which will pop down again after a second. Go for lunch.
When it is finished see if things look OK in iCal. If they do export each of the calendars, copy them to the drop box of your normal account and return to your normal account to import them.
If there is an error make a note of the error message and line number, find that line in the text file, and post it here with a couple of lines either side.
Note that for recurring items iCal normally only makes a single event, the first occurrence, then uses a recurrence rule to calculate if the event should be displayed in the current window. If there are any recurring events in the period you have selected where the first occurrence is before the period they will not be recreated. Where however you have changed a single occurrence of a recurring event iCal makes a new, detached, event. Any of these in the period will be detected. If their original event was also in the period they will now appear in the iCal display as duplicates. For easy spotting of these, I have prefixed "XX-" to the title of any detached events.
AK
<pre style="font-family: 'Monaco', 'Courier New', Courier, monospace; overflow:auto; color: #222; background: #DDD; padding: 0.2em; font-size: 10px; width:400px">on run
set ThePeriod to {date ("jan 1 2008"), date ("dec 31 2008")} --CHANGE THIS BEFORE RUNNIN
set TheFile to open for access (path to desktop as text) & "temp.txt"
set TheContents to read TheFile --until return
close TheFile
set TheLines to paragraphs of TheContents
set OldDelim to AppleScript's text item delimiters
set AppleScript's text item delimiters to {"|"}
set LCount to 0
set ACount to 0
set RCount to 0
set DCount to 0
set SCount to 0
set HowMany to (count of TheLines)
try
repeat with ThisLine in TheLines
if (count of ThisLine) is 0 then exit repeat
-- Start Date, Title, End Date, Calendar, All Day, Recurs, Detached
set LCount to LCount + 1
set Details to text items of ThisLine
set MyStartDate to FixMyDate(item 1 of Details)
set MyTitle to item 2 of Details
set MyEndDate to FixMyDate(item 3 of Details)
set MyCalendar to item 4 of Details
set MyAllDay to item 5 of Details
set MyRecurs to item 6 of Details
set MyDetached to item 7 of Details
if MyAllDay is "1" then set ACount to ACount + 1
if (count of MyRecurs) > 0 then set RCount to RCount + 1
if MyDetached is "1" then set MyTitle to "XX-" & MyTitle
if MyDetached is "1" then set DCount to DCount + 1
if (MyCalendar is not "Birthdays") and (MyStartDate ≥ item 1 of ThePeriod) and (MyStartDate ≤ item 2 of ThePeriod) then
tell application "iCal"
tell calendar MyCalendar
set ThisItem to make new event at end of events with properties {summary:MyTitle, start date:MyStartDate}
end tell
tell ThisItem
if MyAllDay is "1" then set allday event to true
if (count of MyRecurs) > 0 then set recurrence to MyRecurs
set end date to MyEndDate
end tell
end tell
else
set SCount to SCount + 1
end if
if (LCount mod 50) = 0 then
set the_message to "Processed " & (LCount as string) & " of " & (HowMany as string)
display dialog the_message buttons {"Cancel"} giving up after 1
end if
end repeat
on error TheError
display dialog "Error: " & TheError & " about line " & LCount
end try
set AppleScript's text item delimiters to OldDelim
display dialog (LCount as string) & " lines processed" & return & "All Day: " & (ACount as string) & return & "Recurs: " & (RCount as string) & return & "Detach: " & (DCount as string) & return & "Skipped: " & (SCount as string)
end run
on FixMyDate(MyDate)
date (do shell script "date -r " & MyDate & " -v+31y +%e'/'%m'/'%y' '%T")
end FixMyDate
</pre> -
FPM form- How to handle FPM Event ID: by FPM scripting
Hi All,
I am new in the same,i want to perform some action after click in a button in FPM form.
I have gone through the already post FPM Forms Scripting about the scripting but i am not able to understand how i can check
which event or action (Button click) is happened in . DO_OPERATIONS method.
Thanks In advance.The HCM P&F framework does not pass the current operation to the generic service.
For the operation to be know in your custom generic service.
Add a dummy field and population it in process_event method of the feeder class *asr*fmp*feeder*.
Before getting into this there are several blogs on user events - go through them..
Refer to a post by Raja Sekhar Kuncham
HCM Processes and Forms : My Journey around "User Events"
As well as:
User Events in HCM Processes and Forms by Ganesh Sunkara
The user event that you define in HRASR_DT appears as action that can be bound to some UI element like button etc on the FPM form layout designer.
Hope this helps.
With regards,
Sahir. -
How do I create event links in the FPM Application Editor?
I'm am attempting to add a new step to the roadmap of ESS/BEN Benefits Application. I've created a new VAC component and a corresponding view (using the "self-service administrator" role).
When using the FPM Application Editor to create a new perspective, I need to add an event link but receive the error, "Either the perspective "Smoker Verify" has no view assigned to it or none of the view(s) assigned have any event assigned to them".
How do I assign events to my new view? Please assist and thanks in advance.
-Jeff Karls-I see that the events are defined on the views themselves in the portal content.
-
Hi frnds,
As, I'm beginner to performance tuning I dont know
What action do i need to take?
I mean how to read the output which I given below.
this is the output suffering buffer busy waits.
Could anyone please tell me
CLASS TOTAL_WAITS TOTAL_TIME
data block 93303 58711
unused 0 0
system undo header 12 232
undo header 7847 6636
3rd level bmb 0 0
save undo header 0 0
bitmap index block 0 0
file header block 0 0
free list 0 0
undo block 68 207
segment header 422 399
extent map 0 0
2nd level bmb 0 0
system undo block 0 0
sort block 0 0
save undo block 0 0
1st level bmb 1 17
bitmap block 0 0
Thanks, Muhammed Thameem. SHello,
"Buffer busy waits" is contention for a buffer (representing a specific
version of a database block) within the Buffer Cache. So, in essence
it is block contention and thus it is most likely something to do with
the design of the tables and indexes supporting the application. A
built-in bottleneck. On indexes, it could be the age-old problem of
insertions into an index on a column with a monotonically-ascending
data value (i.e. timestamps or sequence numbers) which tends to cause
contention on the highest leaf node of the index. On tables, it might
have to do with many concurrent insertions into a table in a
freelist-managed tablespace where the table has only one freelist. It
could also be due to a home-grown implementation of sequence-number
generators (i.e. small table with one row, one column in which contains
the "last value" of a sequence, etc) which lots of people use to avoid
not being "portable across databases" which they think means not using
Oracle sequences (yadda yadda yadda).
I'd look for any SQL statement in the "SQL sorted by Elapsed Time"
section of the AWR report which exhibits high elapsed time but
relatively low CPU time, indicating a lot of wait time. Of course,
there are something like 800 possible wait events in current releases
of Oracle, of which "buffer busy waits" is only one, so this is just
inference and not a direct causal connection to your problem. But,
once I find such statements I'd check to see if they are
accessing/manipulating tables within the CUBS_DATA tablespace, and then
use "select * from table(dbms_xplan.display_awr('sql-id'))" to
get the execution plan(s), and then look for something ineffective
within the execution plan. You might find the script "sqlhistory.sql" helpful
here as well, to get a "historical perspective" on the execution of the
SQL statements over time, in case the buffer busy waits peaked at some
point in the past
Please refer to:
http://www.pubbs.net/201003/oracle/51925-understanding-awr-buffer-waits.html
Also
http://www.remote-dba.net/oracle_10g_tuning/t_buffer_busy_waits.htm
kind regards
Mohamed -
How to trigger standard FPM events through coding.
While a standard FPM event triggers, it carries out with some event parameters which are automatically filled and is taken care by standard program.
I have a requirement to raise a standard event manually, but in this case, the standard event parameters are not filled.
Can any one tell me if there is any way through which I can get the event parameters automatically by raising a standard fpm event manually.Hi Chittibabu,
There is no any such method to fill the event parameters automatically while we raise standard fpm event manually. You have to fill the parameters accordingly before you raise fpm event manually.
Regards,
Ravikiran.K -
Custom FPM Event for Button row element
Hi Expects,
I have created a new button row element in standard screen, where I want to add custom FPM event and handle the same in get_data( ). But by default SAP is providing few event ID's in drop down.
Please help me how to add custom FPM event for button row element.
Regards,
Reny RichardHi Remy,
Process Event method does have any signature parameters in it which allow us to disable/enable buttons.
We can handle this in Get data method.Get Data is always triggered after Process Event. So you can write that in Get Data instead.
****this is a sample code to do the same. You can do a read as well if single button needs tobe handled***
LOOP AT CT_ACTION_USAGE INTO lw_action WHERE id = (your event id for the button).
lw_action-enabled = abap_false.
MODIFY CT_ACTION_USAGE FROM lw_action TRANSPORTING enabled.
EV_ACTION_USAGE_CHANGED = 'X'.
ENDLOOP.
***use field symbol to avoid modify if you want*** -
Capture FPM Event in another WDC
Hello Friends,
I trying to capture the name of event liek EDIT,CLOSE,NEXT etc.. that are defined in FPM in a std WDC.
I need this because based on the ID of the button , i need to process some information.
Could you pls let me know how to handle this or any code would be fine. ?
Regards,
VinayHello Jens..
I am not trying to go into EDIT mode in std..WDC delivered by SAP .. but thru enh implementation..
I do have dev authorization.
The interface IF_FPM_UI_BUILDING_BLOCK is already implemented in WDC
What I did was..
In the component controller methods.. the method... PROCESS_EVENT is not in EDIT mode..
But i wrote i wrote the code for capturing the instance of the FPM event in the post-exit of that method..
When i tested this in portal.. this code not executed and hence unable to caputre the event.
Is the design approach correct ? or is there another way
Many thanks..
Regards,
Vinay
Edited by: Vinay Reddy on Feb 6, 2012 12:12 PM
Edited by: Vinay Reddy on Feb 6, 2012 12:24 PM -
How to read Excel file in flex
Hi,
I am new to Adobe flex and i dont know how to read Excel in flex and i need coding for that. So anybody help me...
thanks in advance...Hi
You can read and parse XLS files (only works with xls-files) with urlloader and a ZIP-lib that can read zip-files.
public function loadXLS(url:String):void
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
urlLoader.addEventListener(Event.COMPLETE, onLoadComplete);
urlLoader.load(new URLRequest(url));
private function onLoadComplete(even:Event):void
urlLoader.removeEventListener(Event.COMPLETE, onLoadComplete);
model.sheetsDict = new Dictionary();
var zipFile:ZipFile = new ZipFile(urlLoader.data);
for(var i:int = 0; i < zipFile.entries.length; i++)
var entry:ZipEntry = zipFile.entries[i];
var data:ByteArray = zipFile.getInput(entry);
if(useFile(entry.name, "/sheet([^$]+)"))
model.sheetsDict[entry.name.split("xl/")[1]] = new XML(data.toString());
else if( useFile(entry.name, "/sharedStrings.xml") )
model.sharedStrings = new XML(data.toString());
else if( useFile(entry.name, "/workbook.xml$") )
model.workbook = new XML(data.toString());
else if( useFile(entry.name, "/workbook.xml.rels") )
model.rels = new XML(data.toString());
trace(model.sharedStrings)
to read the xml properly you have to use namespaces in the reader-class
namespace ns1 = "http://schemas.openxmlformats.org/spreadsheetml/2006/main";
use namespace ns1;
namespace ns2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
use namespace ns2;
namespace ns3 = "http://schemas.openxmlformats.org/markup-compatibility/2006";
use namespace ns3;
namespace ns4 = "urn:schemas-microsoft-com:mac:vml";
use namespace ns4;
namespace ns5 = "http://schemas.openxmlformats.org/package/2006/relationships";
use namespace ns5;
//Olof -
How to cancel the event in Item Adding without going to the SharePoint Error Page?
Prevent duplicate item in a SharePoint List
The following Event Handler code will prevent users from creating duplicate value in "Title" field.
ItemAdding Event Handler
public override void ItemAdding(SPItemEventProperties properties)
base.ItemAdding(properties);
if (properties.ListTitle.Equals("My List"))
try
using(SPSite thisSite = new SPSite(properties.WebUrl))
SPWeb thisWeb = thisSite.OpenWeb();
SPList list = thisWeb.Lists[properties.ListId];
SPQuery query = new SPQuery();
query.Query = @"<Where><Eq><FieldRef Name='Title' /><Value Type='Text'>" + properties.AfterProperties["Title"] + "</Value></Eq></Where>";
SPListItemCollection listItem = list.GetItems(query);
if (listItem.Count > 0)
properties.Cancel = true;
properties.ErrorMessage = "Item with this Name already exists. Please create a unique Name.";
catch (Exception ex)
PortalLog.LogString("Error occured in event ItemAdding(SPItemEventProperties properties)() @ AAA.BBB.PreventDuplicateItem class. Exception Message:" + ex.Message.ToString());
throw new SPException("An error occured while processing the My List Feature. Please contact your Portal Administrator");
Feature.xml
<?xml version="1.0" encoding="utf-8"?>
<Feature Id="1c2100ca-bad5-41f5-9707-7bf4edc08383"
Title="Prevents Duplicate Item"
Description="Prevents duplicate Name in the "My List" List"
Version="12.0.0.0"
Hidden="FALSE"
Scope="Web"
DefaultResourceFile="core"
xmlns="http://schemas.microsoft.com/sharepoint/">
<ElementManifests>
<ElementManifest Location="elements.xml"/>
</ElementManifests>
</Feature>
Element.xml
<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Receivers ListTemplateId="100">
<Receiver>
<Name>AddingEventHandler</Name>
<Type>ItemAdding</Type>
<SequenceNumber>10000</SequenceNumber>
<Assembly>AAA.BBB, Version=1.0.0.0, Culture=neutral, PublicKeyToken=8003cf0cbff32406</Assembly>
<Class>AAA.BBB.PreventDuplicateItem</Class>
<Data></Data>
<Filter></Filter>
</Receiver>
</Receivers>
</Elements>
Below link explains adding the list events.
http://www.dotnetspark.com/kb/1369-step-by-step-guide-to-list-events-handling.aspx
Reference link:
http://msdn.microsoft.com/en-us/library/ms437502(v=office.12).aspx
http://msdn.microsoft.com/en-us/library/ff713710(v=office.12).aspx
Amalaraja Fernando,
SharePoint Architect
Please Mark As Answer if my post solves your problem or Vote As Helpful if a post has been helpful for you. This post is provided "AS IS" with no warrenties and confers no rights.Recommended way for binding the list event handler to the list instance is through feature receivers.
You need to create a feature file like the below sample
<?xmlversion="1.0"encoding="utf-8"?>
<Feature xmlns="http://schemas.microsoft.com/sharepoint/"
Id="{20FF80BB-83D9-41bc-8FFA-E589067AF783}"
Title="Installs MyFeatureReceiver"
Description="Installs MyFeatureReceiver" Hidden="False" Version="1.0.0.0" Scope="Site"
ReceiverClass="ClassLibrary1.MyFeatureReceiver"
ReceiverAssembly="ClassLibrary1, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=6c5894e55cb0f391">
</Feature>For registering/binding the list event handler to the list instance, use the below sample codeusing System;
using Microsoft.SharePoint;
namespace ClassLibrary1
public class MyFeatureReceiver: SPFeatureReceiver
public override void FeatureActivated(SPFeatureReceiverProperties properties)
SPSite siteCollection = properties.Feature.Parent as SPSite;
SPWeb site = siteCollection.AllWebs["Docs"];
SPList list = site.Lists["MyList"];
SPEventReceiverDefinition rd = list.EventReceivers.Add();
rd.Name = "My Event Receiver";
rd.Class = "ClassLibrary1.MyListEventReceiver1";
rd.Assembly = "ClassLibrary1, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=6c5894e55cb0f391";
rd.Data = "My Event Receiver data";
rd.Type = SPEventReceiverType.FieldAdding;
rd.Update();
public override void FeatureDeactivating(SPFeatureReceiverProperties properties)
SPSite sitecollection = properties.Feature.Parent as SPSite;
SPWeb site = sitecollection.AllWebs["Docs"];
SPList list = site.Lists["MyList"];
foreach (SPEventReceiverDefinition rd in list.EventReceivers)
if (rd.Name == "My Event Receiver")
rd.Delete();
public override void FeatureInstalled(SPFeatureReceiverProperties properties)
public override void FeatureUninstalling(SPFeatureReceiverProperties properties)
}Reference link: http://msdn.microsoft.com/en-us/library/ff713710(v=office.12).aspxOther ways of registering the list event handlers to the List instance are through code, stsadm commands and content types.
Amalaraja Fernando,
SharePoint Architect
Please Mark As Answer if my post solves your problem or Vote As Helpful if a post has been helpful for you. This post is provided "AS IS" with no warrenties and confers no rights. -
Read the bottom for updated information/amendments
Hi everyone,
S.M.A.R.T. is Self-Monitoring, Analysis and Reporting Technology.
[size=15]1. S.M.A.R.T. info websites[/size]
OK, now we all know what S.M.A.R.T. stands for. For more details about S.M.A.R.T., here is a comprehensive non-technical explanation about S.M.A.R.T. by pcguide.com. Maxtor has published a white paper on S.M.A.R.T. too. And this is from Seagate. Anyhow, I am not going to discuss whether S.M.A.R.T will protect your harddisk from failure, etc etc here. Let us focus more on S.M.A.R.T. itself.
[size=15]2. S.M.A.R.T. monitoring tools[/size]
S.M.A.R.T. data is stored as a tabulated data somewhere in the harddisk as registers. The tools below support reading these registers value from S.M.A.R.T. enabled harddisk.
1. SpeedFan *sign-up is required for download, but it's FREE
2. Active SMART
3. Sisoftware SANDRA 2002.6.8.97 SP1 , older version doesn't support
[size=15]3. S.M.A.R.T. Tabulated Information[/size]
Here is a screenshot captured with SpeedFan.
Let us go through the screenshot. As can be seen, there are 5 columns - Attribute, Value, Worst, Warn and Raw.
Attribute
describes the meaning of the values. As mentioned above, the SMART data is stored as a tabulated data as registers. Each attribute represents one register ID. eg Raw Read Error Rate is register ID 01, register ID 03 is Spin-up Time, etc.
Note that the register IDs are not displayed by SpeedFan, but are displayed by other SANDRA and Active SMART. I have no idea how many S.M.A.R.T. attributes are there, Active SMART stated it can detect more than 35 attributes!
However, some attributes are manufacturer specific. So possibly some attribute names as shown in these SMART tools might not represent the true meaning of the values too!!
Value
is the current relative value of the attribute read from the registers.
Worst
is the worst value ever achieved.
Warn
is the critical threshold value of the attribute. If the Value has reached and OVER this threshold value, with very high probability the harddisk is in trouble. If SMART is enabled in the BIOS, SMART will alert user in the POST screen, with some manufacturer specific error code. You may need to refer to your manufacturer then.
Note : Value, Worst and Warn are all relative values, such as percentage, not actual count. I have no idea how to calculate these values. This is the very S.M.A.R.T. algorithm, isn't it? ?(
Raw
is in fact, the most understandable represented value here! It represents the actual count of the attribute. SpeedFan displays this raw value as hexadecimal numbers. Such as Power On Hours Count is "AA8", which is 2728 in decimal numbers, meaning that the harddisk has been power on for 2728 hours!! There are some Raws represent average rate, such as "CRC Error Rate" etc.
[size=15]4. S.M.A.R.T. Attributes In Detail[/size]
Hopefully by now, you have the basic idea how to read the tabulated data. I will try my best to go through the attributes one-by-one, which after that shall make you understand more about S.M.A.R.T. and of course, starts to appreciate it.
Raw Read Error Rate represents the condition of the physical disk, based on raw (physical) read errors, and physical surface defects.
Spin Up Time is the time taken for the hdd to spin-up. more info
Start/Stop Count is the number of counts (cycles) the hdd start/stop. more info
Reallocated Sector Count - the number of sectors have been reallocated. Surface scan and found bad sector will increase this count. Now this drive has 7 bad sectors already!
Seek Error Rate - how often the drive failed to locate the data (seeking)
Power On Hours Count - the number of hours you have powered on the HDD.
Spin Retry Count - how many time your drive need to attempt to get the drive platter spinning. If this value is more than 1, your drive is seriously in very bad condition!
Calibration Retry Count - represents the number of time your drive perform calibration retry. I am not sure if low-level format would increase this value.
Power Cycle CountThe number of time the hdd has been powered on. On and Off = 1 cycle.
Read Soft Error Rate - should be Soft Read Error Rate. Similar to Raw Read Error Rate but this one depends on logical level, such as error occured in the hdd buffer, etc.
Temperature - The drive temperature, Forget the relative values, read from the Raw value -- "2D" in this example, which is 45C. But my SpeedFan displayed 47C at that time!! SpeedFan seems to produce some +-2C error from actual reading once in a while. :P
Hardware ECC Recovered is the number of counts ECC correction is performed on the data.
Reallocated Event Count - similar to Reallocated Sector Count but this one is on the data.
Current Pending Sector - is the number of counts how many sectors are currently pending. But what is a pending sector?? ?( ?(
Offline Correctable - which is Off-line Scan Uncorrectable Sector Count. Again, what is off-line scan?
UltraATA CRC Error Rate - which is in fact, CRC Error Count instead of rate. As shown, there have been "3C3", which is 883 errors occured already!!!
There are more S.M.A.R.T. attributes, such as
Thoroughput Performance - again, this relative value is surely got from some wierd algorithm again.
Seek Time Performance - some algorithm has been used to calculate this performance value.
Power Off Retract and Load Cycle Count are IBM HDD specific features -- unload the head off the platters when power off. More info on Head Load/unload cycle.
[size=15]5. SpeedFan S.M.A.R.T. Fitness and Performance bars[/size]
I should not comment on this too much because this is Almico's work. I am not sure how he calculate to define the "fitness" and "performance" though. It could probably based on mathematic relation between the current Values and the threshold Warns.
For most hdds, like Maxtor and Seagate's, out-of-the-box the fitness bar has already reaching half-way 50%. But for IBM hdd, the fitness bar is always around 100%. This is because IBM hdd has its threshold/Warn values set to unrealistically high until it's quite unreachable even after a long term use. While for other brand HDDs, the threshold values are more realistic. Thus, the fitness bar in particular, does not tell the true fitness of the HDD. Take it as a reference only. Please always refer back to the Raw values to determine the fitness.
[size=15]6. Conclusion : Judging HDD fitness by our own selves![/size]
Now we all know what the Attributes are, so roughly everyone will have the basic idea how to judge HDD health by our own selves depend on the attributes you're reading. S.M.A.R.T. itself however, define "fitness" and "performance" based on its own algorithm.
We can categorize the attributes into :
Error Related Attributes
"UltraATA CRC Error Rate", "Raw Read Error Rate", "Raw Soft Error Rate", "Hardware ECC Recovered Count", "Reallocated Sector Count", "Reallocated Event/Data Count", Offline Correctable"
-- tell how often are those errors occured. For the above example, this Maxtor harddisk should be RMA-ed for its high CRC Error Rate count.
Drive Fitness Attributes
Spin Up Time, Start/Stop Count, Seek Error Rate, Power On Hours Count, Spin Retry Count, Calibration Retry Count, Power Cycle Count, Power Off Retract Count, Load Cycle Count
-- check "spin retry count" and "Seek Error Rate", any value other than zero is really bad.
Other Attributes
I have no idea what they are for except Temperature.
As the conclusion, understanding S.M.A.R.T. attributes helps in knowing your HDD fitness by your own self, rather than waiting for the S.M.A.R.T. to alert you for severe error. That might be too late already. 8o
Thanks for reading.
Edited:
1. for better reading pleasure
2. added Conclusion
3. added explanations about SpeedFan SMART Fitness and Performance bar.Quote
Originally posted by WarLord
I like this HD tool. i use it everyday now. the tempture readings are great Hd temp cpu temp and even the system temp nice added feature to the monitoring. And this is an alternative to enabling the SMART in the bios? Thats the way im understanding it. is that right Maesus ?Because i have disabled in bios. She went threw alot of trouble here. thank you
Well from my observation, whether SMART is disabled or enabled in the BIOS, SMART is always working within the HDD itself.
Basically SMART is acting like a blackbox, monitoring and tabulating HDD condition from time to time and its attributes only fully revealable by the manufacturers. SpeedFan's SMART status only displays partial information that is displayable. Some attributes are hidden, ~OR~ the attributes' locations are different from one HDD to another brand, such that some values don't correspond to the attribute meaning at all.
It is very doubtful to claim that enabling SMART in the BIOS will hog down the performance. Just like a transport bus (yeah real bus that fetch passenger :P ), with or without the black box installed can't help it if the driver wants to speeding. :P -
How to read the contents of attached files
Hi,
I am designing a Form using LiveCycle Designer 8.0
Scenario:
User can attach the file through "Attachments" facility provided on Adobe Reader.
The requirement is to attach 3 documents and post it to SAP system using Web services.
I am using the following code(which i got from this forum only) to find the number of files user has attached.
d = event.target.dataObjects;
n = d.length;
xfa.host.messageBox("Number of Attachments: "+n);
//Displaying the names of the Attached files
for( i = 0; i < n; i++ )
xfa.host.messageBox("Name of the file: "+d[i].name);
My problem: is how to read the contents of the attached files so that I post it to SAP using Web services
Thanks in advance!!
Taha AhmedIn order to read the content of the Redo Log files, you should use Logminer Utility
Please refer to the documentation for more information:
[Using LogMiner to Analyze Redo Log Files|http://download.oracle.com/docs/cd/B19306_01/server.102/b14215/logminer.htm#SUTIL019]
Kamran Agayev A. (10g OCP)
http://kamranagayev.wordpress.com
[Step by Step install Oracle on Linux and Automate the installation using Shell Script |http://kamranagayev.wordpress.com/2009/05/01/step-by-step-installing-oracle-database-10g-release-2-on-linux-centos-and-automate-the-installation-using-linux-shell-script/] -
I have 55,000 images organized into about 1700 events. The only reasonable way to view my library is using events in iPhoto where each event has one image That still leaves 1700 images to sort through but that is a lot easier than 55,000 images. In the side bar is a folder with "iPhoto Events" but those views still show all of the slides. How can I create events and view my photos as events as in iPhoto? Events are critical for large libraries and has been my primary way to sort images.
Thanks!I had a problem a couple of months ago when iPhotos suddenly rearranged the order of my Events (Why won't iPhoto let me arrange my photos?) . I was told "Use albums not events - events are not a good way to organize - albums and folder are designed for organisation and are very flexible".
Haha! I should have paid attention and read between the lines! My iPhotos were highly organised groupings - not according to date but the way I wanted them - and it was so easy to do! I see now that if I had them all in albums, as per the Apple Apologist suggestion, I wouldn't have this unholy mess I have been left with just to make iPhone & iCloud users happy. I am now going through Photos and making Albums (of what used to be in my Events) ... maybe I'll get this finished before they do another non user friendly update! -
how can I remove Events from my Photo in iPhone
Connect to computer iTunes and uncheck under Photos > Events then do a sync.
Maybe you are looking for
-
My app Injustice Gods Among Us is really being a pain. It started blacking out around a week ago, and it wont let me in to the game. I was told to delete the app, and redownload and rebbot my Ipad, but it didnt work. And I lost all my characters, lik
-
How do I have a client submit a form back to me?
In our lobby we would like to have our clients submit a very simple form of only 5 questions to our receptionist. The PDF would be ready to go on our lobby computer, the client would simply answer the 5 questions, and then we would like it sent from
-
Operations Sub Contracting in Production Orders
Dear All I need to do a operation subcontarcting.The requirement goes as follows There are 3 operations 10 Moulding in house ,20 - Subcontracting To vendor for operation & 30 - With the received Material from Subcontractor One more Moulding operati
-
I get this message once and a while: "adobe flash player update service 11.3 r300 has stopped working" I have reenstalled the flash player but it came back. any ideas?
-
Hi I can't eject the dvd. I have open the firmware but in repy to eject cd : the answer was "can't open the eject device". How to do ? Thanks