Avatar not getting approved
its been a reeeeally long time since i joined this forum but my avatar hasn't been approved. I have made this post earlier too. sorry for posting again. Please, the moderators, kindly update my avatar. That'll be really nice.
Peter Spier wrote:
I guess I should expand on that. You can submit a Profile Photo (on the left side of the screen when you go to edit your avatar), and that's waht mods approve, and you've got one, and the avatar on the right side where you can pick from the generics, or load a new one of your choosing. Mods don't see those, as far as I can tell. Have you really submitted that one too?
i just uploaded this guitar pic. thanks a lot for approving it
Similar Messages
-
Service center not getting approval from Sony India
Dear Samuel, First of all thank you for your concern about my issue. The problem is still unresolved. Today also i contacted the service centre but again the same replay " your work is rejected by the sony". This is the 5th sony mobile am using and now I am planning to approach consumer court. That is the last thing I can do for this genuine case. Thank you
I have purchased Zperia Z1 on exchange basis from Sony authorized service
center (Madonna Electronics,MG Road,Cochin) on 04/03/2015. Previously I had
Zperia ZL and due to mic complaints service center suggested upgrade. But
after purchasing Z1 and using 3 months I noticed mic problem in Zperia Z1
too (person on other side couldn't hear me).
So I submitted the device on 25.06.2015 for service and till now it is not
repaired.
From the service center they told me that your work is not approved because
whenever they try to create job it is automatically showing out of
warranty. That is eventhough the mobile is in warranty,site showing out
warranty. Service center has explained this issue to SONY INDIA but not
getting reply from SONY INDIA. So from their side they are unable to do
anything unless they get permission from Sony India.
So today (28.07.2015 at 11 AM) I contacted toll free number and talked with
customer care executive and we had conference mode with Mr. Jefrin from
modonna electronices.
Later getting enough information from Mr. Jefrin customer care executive
directed the call to one of the Manager in Sony India and I raised the
issue to him. Later the Manager called the Madonna electronics and one Mr.
Ajmal explained the technical issues to the Manager.
Finally the Manager told me to write a mail regarding the issue. I forwarded the same letter hope they will solve it -
Buyers not getting Approval Notifications
Hi,
Our Users are reporting that when they submit a purchase order and it is approved by the manager, they are not getting the approval notifications on their home page in Oracle. It was working fine till last week and Users were getting notifications.
I am the Apps DBA of this project and I don't know much about the POs. I am not sure how to diagnose this issue.
any help will be much appreciated.
Thanks.The following is assuming the smtp server used by the workflow mailer is from the same server the concurrent manager is running on.
Is the email bouncing back to the WFMailer as not able to be delivered? If you have root email forwarded to your email account , the bounced message should come to you. If not, look in the root email account for a bounced message intended for the user not receiving the approval notification.
If there is no bounced message:
Look in the log for the smtp server sending out email. Look iin /var/log/maillog.
Look for the email addresses that should be receiving the approval notification but are not. You should either see that the message is sent or what the issue is with it. You can also try to send an email from the smtp server as the applmgr user.
mailx -v [email protected] < testfille.txt
If you see the email is being sent and not bounced back. Have the user check their spam folder or ask their email admin if their is a serverwide spam folder. -
Workitems not getting approved in SRM
We have shopping cart created but even after approving the item by the approving manager - shopping cart still shows in Awaiting Approval status and a new line ite gets created under the main item. No PO gets generated. All workflow related settings are maintained correctly.
- SKHi,
if this is only a one time problem and you need to create the follow-on document, you can trigger the SC transfer with the function 'BBP_PD_SC_TRANSFER' with the GUID of the SC (you can get the GUID from the transaction BBP_PD). If there is no error in the SC, the PO will be created (in this case the workitem won't be closed).
If the new line created under the main line item can not be deleted, I would suggest to delete the whole SC, and create a new one.
Regards,
Peter -
Workitem is not getting approved even it gives success message in UWL
Hi,
I have a Claims and Approvals - Domentic Education Workflow.
When 1st line approver tries to approve a workitem then it gives success message that workitem has been approved but when approver refreshes his UWL this workitem still exists in his worklist and even its status doesn't get changed to Approved.
This taks is not defined as General Task.I had even synchronized using TR - SWU_OBUF but still issue persists. I can Complete a workitem using Tr SWIA but I am not ure how I can Approve given workitem from R3 side.
Thanks,
YagyeshHi Yagyesh,
Even i faced similar issue. First thing, if "Delta pull mechanism" not enabled from portal, it will take time to refresh the UWL.
second thing, if that workitem not approved and you are looking for approval from R3 side, then got SWIA tcode and input the workitem against 1st parameter "Identification" and execute(F8), it will takes you into next screen, in this screen, select the workitem and press "without check"(shift+F5), it will prompt " Approve, Reject " buttons. Now you can take decission on this workitem.
Hope this will resolve your issue.
Regards
Bhaskar Arani -
Hi,
We are on SRM SERVER 550, SP06 with R/3 ECC5.0 backend.
I have activated WS79000010 - WF without approval for bid with the appropriate start conditions.
When the vendor submits the bid, the bidder is able to view and accept the bid. But once he accepts the bid, the status shows 'Awaiting approval' in the overview as well as Status tab (in bid).
The status tab shows
Complete
Created
Bid submitted
Awaiting Approval
whereas the approval preview of bid shows <b>'No Approval Required '</b>.
Also when I tried to check BBP_PD for the bid number, under WF item tab it shows <b>'No workflow item found'.</b>.
What could be the problem?
Thanks & regards,
SrivatsanHi,
Looks like the 'set released' method is not done for the particular document.
please perform the following steps.
1. check the workflow log and find out wether the 'setreleased' method is done for the document.
2.if it is not done , you have to execute the 'setreleased' method for the document manually.
3. then check the status of the document.
hope this helps
regards -
Email Notification is approved but BPM Task is not getting completed
Hi,
A transaction is submitted, the approver gets a email notification. The Human task is Actionable.
So in the email, approver can see Approve / Reject links. On clicking the links it generates a email response and it is sent to the server also.
But the task is not getting approved.
Do we need to check any settings in the server or task?
Thanks for your help.
Chacko..
-
I prepared a GUI user connection application in NebBeans 5.5 accessing mySql database in the company server. The application run very well in desktop.
However, when I post it to the company server web, it gets nothing from the database.
Can any one give advice???
Thank you in advance.
The following is my application
import java.util.Vector;
import java.awt.event.*;
import java.awt.*;
import java.awt.event.*;
public class UserConnection extends javax.swing.JFrame {
//constants for database
private final String userName = "labmanage";
private final String password = "labmanage";
private final String server = "jdbc:mysql://svr.corp.com/labmanage";
private final String driver = "com.mysql.jdbc.Driver";
private JDBCAdapter data = new JDBCAdapter(server, driver, userName, password);
//variables
private String user, pwd;
private Vector<Vector<String>> userTable = new Vector<Vector<String>>();
private Vector<String>colUserNames = new Vector<String>();
* Creates new form UserConnection
public UserConnection() {
initComponents();
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
userLabel = new javax.swing.JLabel();
pwdLabel = new javax.swing.JLabel();
userTextField = new javax.swing.JTextField();
passwordField = new javax.swing.JPasswordField();
submitButton = new javax.swing.JButton();
statusLabel = new javax.swing.JLabel();
jScrollPane1 = new javax.swing.JScrollPane();
statusTextArea = new javax.swing.JTextArea();
changePwdButton = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("User's Connection");
setBackground(new java.awt.Color(153, 204, 255));
setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
setFont(new java.awt.Font("aakar", 1, 12));
userLabel.setText("User Name:");
pwdLabel.setText("Password:");
submitButton.setText("Submit");
submitButton.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
submitButtonMouseClicked(evt);
submitButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
submitButtonActionPerformed(evt);
submitButton.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyTyped(java.awt.event.KeyEvent evt) {
submitButtonKeyTyped(evt);
statusLabel.setText("Status:");
statusTextArea.setColumns(20);
statusTextArea.setEditable(false);
statusTextArea.setLineWrap(true);
statusTextArea.setRows(3);
statusTextArea.setText("Initial assigned password is \"dime\".");
statusTextArea.setWrapStyleWord(true);
jScrollPane1.setViewportView(statusTextArea);
changePwdButton.setText("Change password");
changePwdButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
changePwdButtonActionPerformed(evt);
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(userLabel)
.add(pwdLabel)
.add(statusLabel))
.add(35, 35, 35)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(submitButton)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(changePwdButton))
.add(passwordField, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 230, Short.MAX_VALUE)
.add(userTextField, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 230, Short.MAX_VALUE)
.add(org.jdesktop.layout.GroupLayout.TRAILING, jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 230, Short.MAX_VALUE))
.addContainerGap())
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(userLabel)
.add(userTextField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(pwdLabel)
.add(passwordField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(statusLabel)
.add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(15, 15, 15)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(submitButton)
.add(changePwdButton))
.addContainerGap(27, Short.MAX_VALUE))
pack();
}// </editor-fold>
private void submitButtonKeyTyped(java.awt.event.KeyEvent evt) {
if(evt.getKeyCode() == KeyEvent.VK_ENTER) {
submitButton.doClick();
submitButton.requestFocus();
changePwdButton.requestFocus();
private void changePwdButtonActionPerformed(java.awt.event.ActionEvent evt) {
String command = evt.getActionCommand();
if(command.equals("Change password")) {
passwordField.setText("");
//Get connection to the changing password panel
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new ChangePassword().setVisible(true);
private void submitButtonActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String command = evt.getActionCommand();
if(command.equals("Submit")) {
user = getUser();
pwd = getPwd();
data = new JDBCAdapter(server, driver, userName, password);
data.executeQuery("SELECT * FROM USERTABLE");
colUserNames = data.getColumnNames();
userTable = data.getDataTable();
if(colUserNames.elementAt(0).equals("")) {
statusTextArea.setText("Can not connect to database");
boolean checkUser = false;
int i = 0;
while(!checkUser && i<userTable.size()) {
if(user.equalsIgnoreCase((String) userTable.elementAt(i).elementAt(0))) {
//Find the user in database
checkUser = true;
//Check user's password
if(pwd.equals((String)userTable.elementAt(i).elementAt(1))) {
//Check for initial default password. The user is requested
//to change his password
if(pwd.equals((String) "dime")) {
statusTextArea.setText("You are requested to change your " +
"initial assigned password. Click 'Change password' please.");
else {
//Set UserConnection Panel to invisible
setVisible(false);
dispose();
//Get connection to the table
if(userTable.elementAt(i).elementAt(2).equals("0")) {
//Get connection to non-editable table
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
PVRackReportNonEdit rackReport = new PVRackReportNonEdit();
rackReport.createAndShowDialog();
else {
if(userTable.elementAt(i).elementAt(2).equals("1")) {
//Get connection to editable table
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
PVRackReport rackReport = new PVRackReport(user);
rackReport.createAndShowDialog();
//PVRackReport rackReport = new PVRackReport();
else statusTextArea.setText("You do not get approval for viewing data. " +
"Please contact the administrator for details.");
else {
passwordField.setText("");
statusTextArea.setText("Please enter corrected password or" +
"the administrator for details.");
i++;
if(!checkUser) {
passwordField.setText("");
statusTextArea.setText("Not find such user's name." +
"contact the admistrator for details.");
private void submitButtonMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
* @param args the command line arguments
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new UserConnection().setVisible(true);
public String getUser() {
return userTextField.getText();
public String getPwd() {
return passwordField.getText();
// Variables declaration - do not modify
private javax.swing.JButton changePwdButton;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JPasswordField passwordField;
private javax.swing.JLabel pwdLabel;
private javax.swing.JLabel statusLabel;
private javax.swing.JTextArea statusTextArea;
private javax.swing.JButton submitButton;
private javax.swing.JLabel userLabel;
private javax.swing.JTextField userTextField;
// End of variables declaration
Here is my JDBCAdapter
package rackdemo2;
* This is an adaptor which transforms the JDBC interface
* to the PVRackTableDialogue
import java.util.Vector;
import java.sql.*;
import javax.swing.table.AbstractTableModel;
import javax.swing.event.TableModelEvent;
public class JDBCAdapter {
Connection connection;
Statement statement;
ResultSet resultSet;
Vector<String> columnNames = new Vector<String>();
Vector<Vector<String>> rows = new Vector<Vector<String>>();
ResultSetMetaData metaData;
public JDBCAdapter(String url, String driverName,
String user, String passwd) {
try {
Class.forName(driverName);
connection = DriverManager.getConnection(url, user, passwd);
statement = connection.createStatement();
catch (ClassNotFoundException ex) {
System.err.println("Cannot find the database driver classes.");
System.err.println(ex);
catch (SQLException ex) {
System.err.println("Cannot connect to this database.");
System.err.println(ex);
public void executeQuery(String query) {
if (connection == null || statement == null) {
System.err.println("There is no database to execute the query.");
return;
try {
resultSet = statement.executeQuery(query);
metaData = resultSet.getMetaData();
int numberOfColumns = metaData.getColumnCount();
// Get the column names and cache them.
// Then we can close the connection.
for(int column = 0; column < numberOfColumns; column++) {
columnNames.addElement(metaData.getColumnLabel(column+1));
// Get all rows.
while (resultSet.next()) {
Vector<String> newRow = new Vector<String>();
for (int i = 1; i <= columnNames.size(); i++) {
String tempString = resultSet.getString(i);
if(!tempString.equals("null")) {
newRow.addElement(tempString);
else {
newRow.addElement("");
rows.addElement(newRow);
//Modify dataTable to add empty row to separate chassis
if(numberOfColumns>1) {
int nRow = rows.size();
Vector<String> row = new Vector<String>();
for(int i=0; i<numberOfColumns; i++){
row.add("");
if(nRow>0 || numberOfColumns>0) {
//Adding blank row to separate chassis
int i = 0;
while(i<nRow) {
if(!rows.elementAt(i).elementAt(0).equals("")) {
if(i>0) {
rows.add(i, row);
i++;
nRow = rows.size();
i++;
close();
catch (SQLException ex) {
System.err.println(ex);
public void close() throws SQLException {
resultSet.close();
statement.close();
connection.close();
// MetaData
public Vector<String> getColumnNames() {
return columnNames;
public Vector<Vector<String>> getDataTable() {
return rows;
public int getColumnCount() {
return columnNames.size();
// Data methods
public int getRowCount() {
return rows.size();
}Thank you for your answer.
I'm very new to mySql as server. When I was assigned
to write the application, the administrator has set
up mySql database in the company web server for my
application. My program runs very when using my
workplace desktop with java web start or with java
web start in netbeans (all paths should be link to my
desktop hard disk, i.e. users/application/). I can
not run the application at home because I can not
access to the company intranet server (for security
purpose). The problem happens when I post the
application in the company web page (I have to modify
all paths in jnlp file to the company web address).
The program then runs without exception except it
seems that it gets no data from the database (for
example, when I type my username, it returns that
"There is no such user name. contact.." as what I
code in the application for not correcting user name)
It happens for not only using my company desktop but
also for others.
Please help me.
Thank you in advance.And all this could have been answered yesterday, in your other thread, when I asked you "Is the DB configured to allow that user to connect to the DB from where that user is attempting to connect from?"
Seeing as how you get that error, the obvious answer was, "No." At which point we could have continued.
Configure the needed users into the DB, without forgetting to allow them access from the machines from which they are going to access from.
Although, I agree with Rene, that you should set up a server of some sort, located on the same machine as the DB, for communicating with the DB. -
Leave approved in Portal is not getting updated in Infotype 2001
Hello,
I am using the standard WF - WS12300111 for Leave Request in the Portal.
The workflow is working fine in the portal; Manager could approve / reject the leave request in MSS and it is updating the portal Team calendar and ESS Employee Leave details.
However the approved leave is not getting updated in the Absence infotype 2001 in the back-end system.
Could you help ?
Kind Regards
DesyProgram (SE38) - RPTARQPOST has to be scheduled in order to update the status of leave requests and post to PA2001 after they have been approved.
Is there any other way ? -
OIM 11gR2 Approval workflow not getting triggered
I created an approval workflow by following the 11gR2 developer's guide and deployed it. then created an app instance and also an approval policy for operational level which is auto approved and for request level with this composite. when i raise a request for this app instance in the catalog the SOA composite is not getting triggered. I am able to see a task in pending approval of system admin whenever i raise request for any user and if i complete that pending approval the app gets provisioned directly. Also i do not see any request ID also. please help to find out whats going wrong
Now i tried raising a request from another user who is not a member of SYSADMIN role. This time the request id is generated and a task 'Manual Task for Provision operation for Beneficiary X' is generated in pending approvals of xelsysadm user. When completed the app instance gets provisioned. So this means operational level approval task is triggered? and it has auto-provisioning?
why my custom approval workflow is not getting triggered?
I have created 2 approval policies, one for request level which is auto approval and other for operational level where i have selected the deployed composite name.In both the approval policies i have selected the request type as Provision ApplicationInstance. There is no error also while deploying the composite. Am i missing any step? please help.
Edited by: 955932 on Jan 10, 2013 10:19 PM -
Workflow initiator does not get workitems when PR Approve rejects.
Hi,
Workflow initiators does not get workitems when PR Approve rejects.Is there any thing missing in that .
Please let me know .
Regards,
Gurprit Bhatia
Edited by: GURPRIT BHATIA on Jan 28, 2009 8:38 AMHi GB,
In order that the WF initiator gets workitems on PR rejection, you need to assign method 'InfoReleaseRejected' (BO BUS2009) to a task in the PR rejection flow of your WF. If this is done, then check if you have assigned WF Initiator as the Agent in that task.
Hope this helps.
Thanks,
Ajay -
AE: Approvers not getting E-mail reminders to log onto AE and approve
Hi All
We have set-up our email reminders and escalation but the approvers are not getting the e-mail reminders to log onto AE and approve/reject the request. Is there some additional config we need to do.
We set our background jobs for every 60 seconds so if there is a request the approver should get it a minute or two after the request has been logged.
Any assistance will be appreciated.Hi Rodger,
did you try running the background job "Immediately"?
Do you get any emails then?
If yes, try scheduling more often (enter 1 in the seconds field), at some point SAP has mixed up minutes and seconds (it says 60secs but actually it's 60mins).
If no, are there any requests yet where escalation has already taken place? Or has the time for sending reminders, e.g. 2 days, already passed?
Regards,
Daniela -
Active substitute maintained for a user is not getting workitems for approv
Hi,
Active substitute maintained for a user is not getting workitems for approval.Earlier he was getting
but now a days he is not getting.
Roles wise also , i checked, it is proper.
Please advise me on this.
Regards,
NitiHi Check Table HRUS_D2 for the user id and cross check it with the users pa record and IT 105.
Also check the email address maintained in su01. And further you can check with the org attrib forward??? is maintained.
I hope this helps.
Saj -
Hi,
Am new at this. What security is best for my MacBookPro and iMac? I have had some company asking me to join them to 'clean' and get rid of some unused files. Is this ok, the cost if around $40. I don't mind paying but I am a bit worried they might not be approved by Apple.I have had some company asking me to join them to 'clean' and get rid of some unused files.
Does this company know you use Mac OS X? If so this is a worrysome trend.
For a couple of years now there have been several scam artists that call you, claiming to be from 'tech support', or your ISP or even Microsoft, reporting that your machine has been idenfitied as being infected and that you need to give them access to your machine to 'clean it up'. In the process of this 'clean up' they thoroughly hose the system by trashing important files and then demand more money in 'recovery fees' to restore the system.
I've laughed in their face whenever they've called me since they have no clue of how to compromise a Mac system, but if they've started to target Mac users then more vigilence is required.
http://www.informationweek.com/security/management/microsoft-windows-support-cal l-scams-7-f/240005023
Just Google 'microsoft support scam' for more reports/variations. -
I'm getting charged for some thing I did not approve and I can not get my updates that I need
I can not get any up my updates because I am getting charged for some thing I do not know about
Creative Cloud chat support (all Creative Cloud customer service issues)
http://helpx.adobe.com/x-productkb/global/service-ccm.html
Maybe you are looking for
-
Why can't I sync iTunes 11.1.2.32 with iOS7.0.3?
I have an iPhone 4, iPod classic and iPad2 and none can sync AT ALL with iTunes. My iPhone and iPad are on iOS7.0.3 trying to sync with iTunes 11.1.2.32. My iPhone gets the "trusted device" question and it goes no further. My iPod is now hosed com
-
Internal Order Release/Cancel Release/...
Dear All, I have several questions regarding Internal Order (Order type - 0401) release/cancel release options. In order to make IO "usable" After creation I select Release option and then assign the budget to the order. When the order is no longer n
-
I have itune gift card from US that i want to use in Canada. How can i do that?
I have itune gift card from US that i want to use in Canada. How can i do that?
-
How to implement Startup class for OC4J
I'm in the process of converting my current J2EE application from weblogic 5.1 to OC4J. I have startup class that would set application specific properties by reading property file. In addition, this class would also check for certain resource availa
-
Adobe Captivate 4 at Adobe Learning Summit
Adobe made several exciting announcements at the Adobe Learning Summit in San Jose last week. I posted a rundown on my blog http://stevehoward.blogspot.com/2008/11/redfly-perfect-mobile-companion.html Steve http://twitter.com/Stevehoward999 Adobe Com