Records Management - automaticaly add element to record
Hello,
I try to add an element to a record using the bapi "bapi_record_addelement", but I get an error-message that the number of poid-parameters is not equal to those in the registry information.
My ABAP-Code is the following:
*& Report Z_RECORD_ADDELEMENT
REPORT Z_RECORD_ADDELEMENT.
*{ INSERT I50K900139 1
data:
wa_ELEMENT_SP_POID type BAPIPROPTB,
wa_ELEMENT_PROPERTIES type BAPIPROPTB,
wa_ELEMENT_VISIBILITY type BAPIPROPTB,
element_sp_poid type standard table of BAPIPROPTB,
element_properties type standard table of BAPIPROPTB,
wa_insertion_by_modelid type BAPISRMREC_MODELIDINS,
return like BAPIRET2.
* Fill SP POID table
start-of-selection.
CLEAR element_sp_poid.
wa_element_sp_poid-NAME = 'DOC_ID'.
wa_element_sp_poid-VALUE = '03F65C4630552864E1000000AC15C293'.
APPEND wa_element_sp_poid TO element_sp_poid.
wa_element_sp_poid-NAME = 'VARIANT'.
wa_element_sp_poid-VALUE = '0'.
APPEND wa_element_sp_poid TO element_sp_poid.
wa_element_sp_poid-NAME = 'VERSION'.
wa_element_sp_poid-VALUE = '2'.
APPEND wa_element_sp_poid TO element_sp_poid.
wa_insertion_by_modelid-MODEL_ID = 'D7F85C462E55770CE1000000AC15C293'.
wa_insertion_by_modelid-PARENT_NODE_ID = '3'.
** add element
CALL FUNCTION 'BAPI_RECORD_ADDELEMENT'
EXPORTING
objectid = 'E1A55C462F0C790CE1000000AC15C293'
DocumentClass = 'ZRMSR04'
sps_id = 'Z_RM_MIETAKT'
anchor = 'Schriftverkehr'
description = 'Testdokument eingefügt mit ABAP'
IMPORTING
return = return.
write: return-message,
return-type.
*} INSERT
I hope someone can help me because I am trying for one week.
hootzter
Hey...
Good information.
I get an error in trying to add element to record, van you help me out.
The error reads the following:
Source: CL_SRM_GENERIC_SP0============CP , CL_SRM_GENERIC_SP0============CM002 , 102
General error: Could not connect to repository.
This is the code Iam using
*& Report ZTESTPRG
REPORT ZTESTPRG.
Definition of local data types for DOC_ID
types: begin of ty_doc_id,
docclass type bapisrmdoc-docclass,
objectid type bapisrmdoc-guid,
end of ty_doc_id.
Structure of the correct Document-ID
data: ls_doc_id type ty_doc_id,
lt_sp_poid type standard table of bapiproptb,
ls_sp_poid type bapiproptb,
ls_return like bapiret2,
ls_insertion_by_anchor type bapisrmrec_anchorins.
clear: lt_sp_poid, ls_doc_id, ls_doc_id.
ls_doc_id-docclass = 'ZSNG09'.
Document Class des einzufügenden Dokumentes
ls_doc_id-objectid = '466E6A24DED600A100000000AC10A015'.
Objektid des einzufügenden Dokumentes
clear: ls_sp_poid. " clear weg und ls_sp_poid clearen
ls_sp_poid-name = 'DOC_ID'.
ls_sp_poid-value = ls_doc_id.
Document Class und Objektid als Struktur des Dokumentes
append ls_sp_poid to lt_sp_poid.
clear: ls_doc_id.
ls_sp_poid-name = 'VARIANT'.
ls_sp_poid-value = '0'.
append ls_sp_poid to lt_sp_poid.
clear: ls_doc_id.
ls_sp_poid-name = 'VERSION'.
ls_sp_poid-value = '0'.
append ls_sp_poid to lt_sp_poid.
clear: ls_insertion_by_anchor.
ls_insertion_by_anchor-parent_node_id = '5'.
call function 'BAPI_RECORD_ADDELEMENT'
exporting
objectid = '466E9223F887013A00000000AC10A015'
Objectid der Akte
documentclass = 'ZSNG08'
Document Class der Akte
sps_id = 'ZSCMG_SPS_NUCLEAR_PROCEDURE'
Einzufügende Elementart
anchor = 'NP02'
Im Aktenmodell hinterlegt beim Modellknoten
description = 'Test Document'
Beschreibung des Dokumentes in der Akte
element_type = 'I'
Instanz
importing
return = ls_return
tables
element_sp_poid = lt_sp_poid.
write: ls_return-message,
ls_return-type.
Similar Messages
-
ContextException : cannot bind or add element
Hi all,
I can't find an answer to my problem.
Hope you'll be able to
Here are the facts :
Context :
I'm currently creating a TeamViewer for Managers to be able to select the employees they manage.
For that, I have a table which lists them all, displaying their infos in specific columns.
Both columns and data are dynamic and are specified in the SAP back end.
I use the following bapis to get these informations :
- HRWPC_RFC_GET_COL_INFO (returns columns informations)
- HRWPC_RFC_GET_OBJECTS (returns employees personal numbers -> pernr)
Fact is the second one doesn't return as much informations as needed.
So I have then to call a third bapi :
- MYBAPI_USER_INFOS (return informations about an employee)
which, from an employee pernr, returns a lot more informations about him.
Fact is I manage to use efficiently both first bapis, so I get columns and pernr data.
Then I would like to get in a context node the list of enhanced informations of the employees, which is mapped to my view context and applied to a dynamic table.
My problem :
While adding programmaticaly the columns to my context node, I get the following exception : "com.sap.tc.webdynpro.progmodel.context.ContextException: Node(TeamViewerApp.MainViewColumns): cannot bind or add element, because it is already bound to a node" error.
Error summary :
- com.sap.tc.webdynpro.progmodel.context.ContextException: Node(TeamViewerApp.MainViewColumns): cannot bind or add element, because it is already bound to a node
-- at com.sap.tc.webdynpro.progmodel.context.Node.prepareAddElement(Node.java:649)
-- at com.sap.tc.webdynpro.progmodel.context.Node.addElement(Node.java:635)
-- at com.airfrance.tv1.teamviewer.components.TeamViewerApp.updateMainView(*TeamViewerApp.java:560*)
-- at com.airfrance.tv1.teamviewer.components.wdp.InternalTeamViewerApp.updateMainView(InternalTeamViewerApp.java:534)
-- at com.airfrance.tv1.teamviewer.components.views.TeamViewerView.onActionChangeView(TeamViewerView.java:197)
TeamViewerComp code :
wdThis.getColumnsMainView(viewId, userLanguage, userId); // get the columns infos
IGetColumns_ResultNode columns = wdContext.nodeGetColumns_Result();
for(int i=0; i<columns.size(); i++) {
IWDNodeElement column = columns.getElementAt(i); // get the #i column
wdContext.nodeMainViewColumns().addElement(column); +//add this column to my other context +
My context :
Component
- GetColumns (Model)
-- GetColumns_Output
--- GetColumns_Result
Colname
Heading
-- Langu
-- Uname
-- Viewid
- MainViewColumns (Value)
-- lot of infos
- SubViewColumns (Value)
-- lot of infos
My environment :
- os : Windows XP SP2
- procesor : 3GHz
- memory : 3Gb
- ide : SAP NWDS 7.0.12
- server JEE : 7.00 SP12
- server VM : Java Sun 1.4.2_12
Any help will be really appreciated
Thank you for your time!
AlphonseHI,
com.sap.tc.webdynpro.progmodel.context.ContextException: Node(HrChiefRedressalView.Ctx_FilteredOutput): cannot bind or add element, because it is already bound to a node
Try to bind or add element from the source of the node instead of mapped one.
Ex:
Controller->View
If your node is mapped from controller to view. bind/add element should be done at controller level not at view level.
Regards
Ayyapparaj -
I wish to export several frames from iMovie as if they were images (like JPEGs or TIFFs). Is it possible to do this using iMovie, if so how? Any advice is greatly appreciated. I've already managed to 'add a freeze frame' to isolate the desired frames but I can't export it. Thanks.
Ach... I found a solution thanks to previous posts which came to light after I'd posted what was obviously a question that had been asked before.
-
I upgraded to iTunes 11.0. My iPod Nano 4th Version will sync, but music and playlists will not appear to manage and add more songs. Is there a fix?
If I go from 'Devices' to Summary and then Music, I only get one option-Sync Music,There is a box on this page but the options within it are grayed out. If I tick the Sync Music option I get this message-
'Are you sure you want to remove existing music,films,ect, from this ipod and sync with this itunes library?
'Music synced to (my ipods name) from other itunes libraries will be removed and items will be synced from this itunes library' I have only ever used itunes on this PC and the 'Manually manage music and videos' is ticked but
that must be a default setting as I haven't ticked it. -
Add element in dropdown list dynamically
Hi All,
I am facing a problem in adding item in a dropdown list dynamically.
When i get dropdown list through IgetElementById get null.
var list = document.getElementById("targetgroupname");
here list comes as null. Now I've to fill this list. I am using below code -
for(var j=0;j< com.length;j++){
iist.options[j]= new Option(com[j],com[j]);
But it is not working. My list is not getting filled with these values.
I doubt due to var list -> null it does not allow to add element.
But I am not getting any clue, how to initialize it.
Please suggest, I am new to javascript.
Thanks & Regards,
Sneha.Hi,
Thanks for the reply, yes the select box has that id - targetgroupname.
actually there are 2 dropdown lists, Based on the selection of first dropdown list another list shd be filled.
So I've written a script at "onchange" of first dropdown list. It works fine when a value gets changed at first dropdown list.
In some cases I've to display a preselected value at first list ( which comes from previous page as parameter), in that cases there will be no onchange on first list, so I've called the script function manually after creating the first list,like below :
<SCRIPT> checkSource();</SCRIPT>
and in this case it does not work & I get a null when i try to read the 2nd list.
But I am not sure why it is happening.. may be it is not loaded /created on page when i am calling it.
If yes, what shd I do ?
Thanks for your time.
Regards,
Sneha -
Is there a way you can add elements dynamically to an existing array??
hey guys... i need to add elements to an array dynamically... how do i do that?
for example... in one of my functions i do..
for each(var item:Object in fileList){
fileListArr.push(item);
and in a later function i need to add one more element to my fileListArr...
so i tried doing
fileListArr[indexNum].push({
key:videoKey
so i need to have an array which resembles something like this...
Before adding elements...
fileListArr:
[0]: name:test1
Size:12K
caption:testing caption
number:1
[1]: name:test2
Size:12K
caption:testing caption
number:2
after adding key to array
fileListArr:
[0]: name:test1
Size:12K
caption:testing caption
number:1
key:xyxyyy11y1yy1y1y2y2u33n
[1]: name:test2
Size:12K
caption:testing caption
number:2
key:iiduudjmenri112jj2n4n3m2j1j21
any ideas?hmm interesting... so i made the changes... i changed the array to arraylist and the code i have is as follows... but i still get an error... the error says ... "ReferenceError: Error #1056: Cannot create property key on flash.net.FileReference."
public var videoReference:VideoHandler;
public var fileRef:FileReferenceList = new FileReferenceList();
[Bindable] public var fileListArr:ArrayList = new ArrayList();
[Bindable] public var fileNames:ArrayCollection = new ArrayCollection();
public function selectionHandler(event:Event):void{
fileRef.removeEventListener(Event.SELECT, selectionHandler);
var numSelected:int = event.target.fileList.length;
var fileList:Array = event.target.fileList;
for each(var item:Object in fileList){
fileListArr.addItem(item);
fileNames.addItem({
num: fileNames.length + 1,
name: item.name,
size: formatFileSize(item.size),
status: ""
var newListLength:Number = fileListArr.length;
if(fileCounter > 0){
loopList(fileCounter);
else
loopList(0);
public function loopList(value:int):void{
//trace("looplist -->");
if(value < fileListArr.length){
_numCurrentUpload = value;
file = new FileReference();
file = FileReference(fileListArr.getItemAt(value));
file.addEventListener(Event.COMPLETE, loadVideo);
file.addEventListener(ProgressEvent.PROGRESS, fileProgress);
file.load();
public function setUploadKey(event:ResultEvent):void{
if(event.result.ThereWasAnError){
Alert.show(event.result.ErrorMessages[0]);
}else{
videoKey = event.result.UploadKey;
if(fileCounter >= fileListArr.length){
trace("in if");
fileCounter = 0;
uploadLoopList(fileCounter);
}else{
trace("in else");
//fileListArr[fileCounter - 1]['videoKey'] = videoKey;
-----> get an error here --->fileListArr.getItemAt(fileCounter - 1).key = videoKey;
//fileListArr[fileCounter - 1] = [{key: videoKey}];
loopList(fileCounter); -
I somehow managed to add lines on my master slide and can't get rid of them. I now have a useless rectangle on the left half of many of my slides. How do I remove this?
Select the master slide,
copy any objects you want to keep,
Select all, (command A), and press delete key.
Paste back the items to retain (Command V) -
How to add elements into Object[][] type of list, in runtime?
I have Object list, ie.
final Object[][] data = {
{"January", new Integer(150) },
{"February", new Integer(500) },
{"March", new Integer(54) },
{"April", new Integer(-50) }
};How can I dynamicly add new elements in it, at the runtime?
Thank you in advance!Do I have to remove 'final' for that, and then add
elements?
No. you can't change an array's size.
You can do this
Object[][] arr = new Object[numRows][numCols];But once you've created it, its size can't change.*
I don't know what you're doing, though, and what actual data you're putting in, but Object[][] holding rows of [String, Integer] is almost certainly a poor data structure. Think about creating a class the represents one "row" here and then create a 1D array of that class.
* Okay, you can kinda sorta effectively "change" the size of second and subsequent dimensions, since a multidimensional array is an array of arrays. I wouldn't recommend it though: int[][] arr = new int[3][2]; // a 3 x 2 rectangular array of int--it's an array of array of int, with 3 "rows", each of which is an array of int with 2 elements.
arr[0] = new int[10]; // now it's a jagged array whose first row has 10 elments instead of 2Here we haven't changed an array's size, just replaced one of its elements, which is also an array, with a new, larger array. -
In .java add elements to .jsp
Hello!
I'm just beginning and can't understand one thing:
When I create JSPDynPage, system create JSP and JAVA file - it's clear. Then I add elements to form in JSP, for example, Layout.
Can I add, for example, row into that Layout in .java file?
.JSP:
<hbj:form>
<hbj:formLayout
id="myLayout"
width="100%">
<hbj:formLayoutRow
id="Row1">
<hbj:formLayoutCell
id="Cell11"
align="LEFT"
width="100%">
<hbj:textView
id="welcome_message"
text="May the force be with you unknown user"
design="HEADER1" />
</hbj:formLayoutCell>
</hbj:formLayoutRow>
</hbj:formLayout>
</hbj:form>
.JAVA:
public void doProcessBeforeOutput() throws PageException {
this.setJspName("myjsp.jsp");
Form Reg_Form = null;
FormLayout RF_All = new FormLayout();
Tray Left_Tray1 = new Tray("TrayRules1");
Reg_Form = (Form)this.getForm();
RF_All = (FormLayout) this.getComponentByName("myLayout");
for (int i = 1; i <= 3; i++ ) { RF_All.addRow(); }
Left_Tray1.setTitle("Sample Title");
Left_Tray1.setWidth("100%");
TextView Left_Tray1_text = new TextView("Left_Tray1_text");
Left_Tray1_text.setText("Sample Text");
Left_Tray1_text.setEncode(false);
Left_Tray1_text.setWrapping(true);
Left_Tray1.addComponent(Left_Tray1_text);
RF_All.addComponent(2,1, Left_Tray1);
Reg_Form.addComponent(RF_All);
That code don't display Tray in page...Paul,
I suggest you not to add the your business logic in that auto generated file.
Instead you can have seperate java file or any Bean.
Since you are writing the logic for layout you can add the code in the jsp file
itself.
If you are using HTMLB Then keep the auto generated code in the jsp otherwise remove the code and keep the file as jsp meaning you use the html, javascript,
jsp code in the .jsp file itself.
you can add the java code in the jsp
<% String strName = "SAP"; %>
<sc ript>
al ert("<%=strName%>");
</sc ript>
Ram -
Dynamicall add element in Drop Down
There is one for in which drop down list is present. I want to add element dynamicall into drop down list when certain event is occur
trigger a Java script function at the end of the event which will
add date into the combobox. -
Adding elements to a node: cannot bind or add element
Hallo,
I want add emenents of my phases and subphases to a table, but I get this exception:
ContextException: Node(RoadMapVIew.phase_subphase_table): cannot bind or add element, because it is already bound to a node
The code is the following:
int phaseSize = processT.getSequenceGroup1().getPhaseList().getSequenceGroup1().getPhase().length;
String currentStatus = "";
String currentPhaseId = "";
String currentSubphaseId = "";
String currentNotifyId = "";
String lastStatus = "";
for (int i = 0; i < phaseSize; i++)
PhaseT phaseT = processT.getSequenceGroup1().getPhaseList().getSequenceGroup1().getPhase();
IPrivateRoadMapVIew.IPhase_subphase_tableElement tableElement = wdContext.nodePhase_subphase_table().createPhase_subphase_tableElement();
tableElement.setPhase_desc(phaseT.getSequenceGroup1().getPhaseDesc());
tableElement.setPhase_id(phaseT.getSequenceGroup1().getPhaseId());
int subPhaseSize = phaseT.getSequenceGroup1().getSubPhaseList().getSequenceGroup1().getSubPhase().length;
for(int j = 0; j< subPhaseSize; j++)
SubPhaseT subPhaseT = phaseT.getSequenceGroup1().getSubPhaseList().getSequenceGroup1().getSubPhase()[j];
tableElement.setSubphase_desc(subPhaseT.getSequenceGroup1().getSubPhaseDesc());
tableElement.setSubphase_id(subPhaseT.getSequenceGroup1().getSubPhaseId());
String status = subPhaseT.getSequenceGroup1().getStatus();
wdContext.nodePhase_subphase_table().addElement(tableElement);
lastStatus = status;
//le fasi/sotofasi sono ordinate perciò la corrente è l'ultima con uno status valido
if (status != null && !status.equals(""))
currentStatus = status;
currentPhaseId = phaseT.getSequenceGroup1().getPhaseId();
currentSubphaseId = subPhaseT.getSequenceGroup1().getSubPhaseId();
if (status.equals(DAConst.STATUS_NOTIFY))
//currentNotifyId = "notifyId"; //subPhaseT.getSequenceGroup1().getNotifyId();
currentNotifyId = subPhaseT.getSequenceGroup1().getNotifyId();
Can anybody help me please?
Thanks,
regards,
AndreaI have solved moving the creation of the reference of the node element and the setting of elements inside the second for loop:
for (int i = 0; i < phaseSize; i++)
PhaseT phaseT = processT.getSequenceGroup1().getPhaseList().getSequenceGroup1().getPhase()<i>;
String phaseDesc=phaseT.getSequenceGroup1().getPhaseDesc();
String phaseId=phaseT.getSequenceGroup1().getPhaseId();
int subPhaseSize = phaseT.getSequenceGroup1().getSubPhaseList().getSequenceGroup1().getSubPhase().length;
for(int j = 0; j< subPhaseSize; j++)
SubPhaseT subPhaseT = phaseT.getSequenceGroup1().getSubPhaseList().getSequenceGroup1().getSubPhase()[j];
IPrivateRoadMapVIew.IPhase_subphase_tableElement tableElement = wdContext.nodePhase_subphase_table().createPhase_subphase_tableElement();
tableElement.setSubphase_desc(subPhaseT.getSequenceGroup1().getSubPhaseDesc());
tableElement.setSubphase_id(subPhaseT.getSequenceGroup1().getSubPhaseId());
tableElement.setPhase_desc(phaseDesc);
tableElement.setPhase_id(phaseId);
String status = subPhaseT.getSequenceGroup1().getStatus();
wdContext.nodePhase_subphase_table().addElement(tableElement);
lastStatus = status;
Thanks everybody for helps,
Andrea -
Hello all,
Stack trace :
GeneralException Node((<Context path of node>): cannot bind or add element, because it is already bound to a node
I am trying to upload data from excel file in web dynpro context.In the process, when I create and add an element to the node which I want to populate with excel data, it throws the above mentioned exception.
Any idea as to wht is causing the problem ?Hi,
GeneralException Node((<Context path of node>): cannot bind or add element, because it is already bound to a node
It seems that its a mapped node, try to bind or addelements at the source.
Ex: If this node is mapped from controller to view try to add elements in contoller instead of doing in view.
Regards
Ayyapparaj -
Script that enables Remote Management and adds user
I need to make a script that can enable Remote Management and add a user to control it.
I have tried to watch which plist files it uses so I could edit those.
It writes some text in com.apple.RemoteManagement.plist and com.apple.ARDAgent.plist bit I can't find where the user is added.
Any ideas guys
ThanksNo need to mess around with .plists. ARD has a command-line admin tool. The syntax is a little funky, but this should give you an idea:
$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/k ickstart -activate -configure -access -on -users john -restart -agent -privs -all
This is all covered in more detail in Apple's technote. -
Manage Outlook Add-Ins Programatically
We publish Outlook in a Citrix XenApp environment. The installation is shared by users with different needs. One of our departments would like to make use of a vendor supplied Outlook Add-In, but that add-in is only relevant to members of that department,
and in fact will cause grief for non members as they will be prompted to log in to a system to which they have no access. I can enable or disable the add-in in question by manually going in to Outlook "Tools>Trust Center>Add-ins>Manage COM
Add-ins" by simply checking or unchecking a box. What I need to figure out is how to do this programatically by script (or possibly GPO) so that the add-in is enabled for members of the department in question and disabled for everyone else. So far I have had
no luck. I have compared the HKCU registry hive with the Add-In enabled and Disabled. There is one key that changes consistently when I do so, but changing that key programatically does not cause the add-in to become either enabled or disabled. What happens
when I check or uncheck the box? Where is that information stored? How can I manipulate it?LoadBehavior only has an effect before Outlook is started. Changing it to 2 will set it to load on demand, to 3 is load on startup, 0 is don't show it. There are other settings but those are the important ones.
Outlook.Application.ComAddins.Item(<addinProgId>).Connect can be set to False to disconnect the addin after Outlook startup, where <addinProgId>.is the ProgID for the addin.
You can iterate the ComAddins collection to find the correct ProgId string to use in a script. The ProgId property is exposed in the Office.ComAddins.ComAddin object.
Ken Slovak
MVP - Outlook
http://www.slovaktech.com
Author: Professional Programming Outlook 2007
"Eric P" <=?utf-8?B?RXJpYyBQ?=> wrote in message
news:5a5c3097-10ca-4ee0-805f-dfa124020818...
We publish Outlook in a Citrix XenApp environment. The installation is shared by users with different needs. One of our departments would like to make use of a vendor supplied Outlook Add-In, but that add-in is only relevant to members of that department, and
in fact will cause grief for non members as they will be prompted to log in to a system to which they have no access. I can enable or disable the add-in in question by manually going in to Outlook "Tools>Trust Center>Add-ins>Manage COM Add-ins"
by simply checking or unchecking a box. What I need to figure out is how to do this programatically by script (or possibly GPO) so that the add-in is enabled for members of the department in question and disabled for everyone else. So far I have had no luck.
I have compared the HKCU registry hive with the Add-In enabled and Disabled. There is one key that changes consistently when I do so, but changing that key programatically does not cause the add-in to become either enabled or disabled. What happens when I
check or uncheck the box? Where is that information stored? How can I manipulate it?
Ken Slovak MVP - Outlook -
Add element in to bundle/unbundle Functions
In the Bundle/Unbundle functions, Add Element is adding the same element.no use of adding same (again need to Select Item).based on the Cluster order if labVIEW adds next element it is usefull.
I typically just resize the bundle node.
Maybe you are looking for
-
E72 - Unable to set up e-mail mailbox after firmwa...
Hi all, I have a newly acquired E72-1 which has been updated to the latest firmware version 051.018. I'm trying to set up the e-mail function on my E72 but getting nowhere. I keep getting to the enter e-mail details/password etc page then-nothing. Th
-
2 completely unrelated questions
Hi All I've been googling this for a few days now and have not found anything helpful. First question (not terribly relevant to this forum and I've already found a semi-workable sollution): I'm developing a mobile site and testing on a touch becuase
-
Empty File handling and raise alert.
Hi, We have requirement where we are doing file pass through. But client wants PI to raise alert when it receives 0 byte file. How can we achieve this using File/FTP/SFTP adapter when we are not reading the actual payload and doing only pass thru? Th
-
I have a Lowe TV - incredibly expensive with excellent picture BUT it has only 1 HDMI input socket and I've currently got a BluRay player using that. Is there any device which will let connect the HDMI output from an Apple TV as well so I can use bot
-
Notes: quits, or crashes or just won't stay open.
I understand why Apple took Notes out of Mail and set it up as a separate utility, and I would be fine with it (even with the less than pleasing fake leather) -- if it only worked properly. It's driving me nuts that when I close the notepad, the appl