Appeon provides an Unsupported Features Analysis tool for detecting unsupported features in a PowerBuilder application before generating files for the application. The Unsupported Features Analysis scans each object within a PowerBuilder application for unsupported features and generates a report that, when combined with the this help, provides a foundation for bringing a PowerBuilder application to specification.
The Appeon Unsupported Features Analysis is capable of highlighting the majority of unsupported features contained in the PowerBuilder application; however, there are some features that the Unsupported Features Analysis will not detect, and thus they will not be listed in the Analysis Report. Approximately 5% of PowerBuilder features that are not supported by Appeon may not be detected in the Unsupported Features Analysis.
An application containing unsupported features can still be converted to the Web and work correctly, depending on the type and number of unsupported features. If the Web application does not work correctly but the Unsupported Features Analysis does not indicate any unsupported features that are likely to cause such a problem, the problem may be caused by an unsupported feature that has not been detected. In this case, it is strongly recommended that you carefully read the undetected features listed below and examine your application to determine if it contains any of these features.
The following are unsupported features that are not detected during Unsupported Features Analysis.
Table 275. Undetected features
Naming conventions |
|
|||||
Null values |
|
|||||
ASCII characters |
Vertical tab (~v) |
|||||
Non-visual UserObject |
A NonVisualObject object assigned to an autoinstantiated NVO or an autoinstantiated NVO assigned to a NonVisualObject object. |
|||||
Variables and constants |
|
|||||
Forced conversion |
Forced conversion between types |
|||||
Window |
Multiple MDI windows in an application. |
|||||
Overloading, overriding functions |
|
|||||
Using the return value of some supported functions |
The return value of the Open or OpenSheet functions |
|||||
Operators |
The operator '^' with embedded SQL statements. |
|||||
Stored procedure |
|
|||||
Cursor declare requirement |
|
|||||
Cursor statements |
|
|||||
DataWindow expression function |
lastpos |
lastposw |
mode |
pageAcross |
pageCountAcross |
profileint |
profilestring |
stdev |
var |
varp |
|
|
|
Partially supported features |
Some partially supported features, for example, reading Object.DataWindow.CrossTab.Rows is supported by Appeon, but writing is not, therefore, using DataWindow Modify function or equivalent to write this property cannot be detected by UFA. |
|||||
User interface interactions |
Unsupported features in the UI such as shortcut key. |
|||||
Enumerated data type |
Default values of enumerate type variable |
|||||
Data source |
The data sources of dynamically created DataWindows are stored procedures with input parameters. |
|||||
Dynamic calls |
|
|||||
Others |
|
|||||
System events |
The following are unsupported and undetected system events. |
|||||
cbgetcount |
dderequest |
gettextlength |
mmmomclose |
sbnpageup |
vbxevent12 |
|
cbgetcursel |
ddeterminate |
globalrcchange |
mmmomdone |
sbnsetfocus |
vbxevent13 |
|
cbgetdroppedcontrolrect |
ddeunadvise |
heditctl |
mmmomopen |
sbnthumbposition |
vbxevent14 |
|
cbgetdroppedstate |
deactivate |
help |
mmwimclose |
sbnthumbtrack |
vbxevent15 |
|
cbgeteditsel |
deadchar |
hookrcresult |
mmwimdata |
sbntop |
vbxevent16 |
|
cbgetextendedui |
deleteitem |
hscroll |
mmwimopen |
setcursor |
vbxevent17 |
|
cbgetitemdata |
destroyclipboard |
hscrollclipboard |
mmwomclose |
setfont |
vbxevent18 |
|
cbgetitemheight |
devmodechange |
iconerasebkgnd |
mmwomdone |
settext |
vbxevent19 |
|
cbgetlbtextlen |
drawclipboard |
initdialog |
mmwomopen |
sizeclipboard |
vbxevent20 |
|
cbinsertstring |
drawitem |
initmenu |
mouseactivate |
skb |
vbxevent21 |
|
cblimittext |
dropfiles |
initmenupopup |
move |
spoolerstatus |
vbxevent22 |
|
cbncloseup |
dwclosedropdown |
keyup |
ncactivate |
syschar |
vbxevent23 |
|
cbndblclk |
dwescape |
lbaddstring |
nccalcsize |
syscolorchange |
vbxevent24 |
|
cbndelayedrecogfail |
dwnbacktabout |
lbdeletestring |
nccreate |
syscommand |
vbxevent25 |
|
cbndragdrop |
dwndropdown |
lbdir |
ncdestroy |
sysdeadchar |
vbxevent26 |
|
cbndragenter |
dwngraphcreate |
lbfindstring |
nchittest |
syskeydown |
vbxevent27 |
|
cbndragleave |
emgetwordbreakproc |
lbfindstringexact |
nclbuttondblclk |
systemerror |
vbxevent28 |
|
cbndragwithin |
emlimittext |
lbgetcaretindex |
nclbuttondown |
sysykeyup |
vbxevent29 |
|
cbndropdown |
emlinefromchar |
lbgetcount |
ncmbuttondblclk |
tbnmoved |
vbxevent30 |
|
cbneditchange |
emlineindex |
lbgetcursel |
ncmbuttondown |
tcnclicked |
vbxevent31 |
|
cbneditupdate |
emlinelength |
lbgethorizontalextent |
ncmbuttonup |
tcndoubleclicked |
vbxevent32 |
|
cbnendrec |
emlinescroll |
lbgetitemdata |
ncmousemove |
tcndragdrop |
vbxevent33 |
|
cbnerrspace |
emreplacesel |
lbgetitemheight |
ncpaint |
tcndragenter |
vbxevent34 |
|
cbnkillfocus |
emscroll |
lbgetitemrect |
ncrbuttondblclk |
tcndragleave |
vbxevent35 |
|
cbnmodified |
emsetfont |
mbuttondown |
ncrbuttondown |
tcndragwithin |
vbxevent36 |
|
cbnrcresult |
emsethandle |
mbuttonup |
ncrbuttonup |
tcnenterkey |
vbxevent37 |
|
cbnselchange |
emsetmodify |
mdiactivate |
nextdlgctl |
tcnkeydown |
vbxevent38 |
|
cbnselendcancel |
emsetpasswordchar |
mdicascade |
omnclose |
tcnkillfocus |
vbxevent39 |
|
cbnselendok |
emsetreadonly |
mdiconarrange |
omndatachange |
tcnrclicked |
vbxevent40 |
|
cbnsetfocus |
emsetrect |
mdicreate |
omndragdrop |
tcnrdoubleclicked |
vbxevent41 |
|
cbresetcontent |
emsetrectnp |
mdidestroy |
omndragenter |
tcnselchanged |
vbxevent42 |
|
cbselectstring |
emsetsel |
mdigetactive |
omndragwithin |
tcnselchanging |
vbxevent43 |
|
cbsetcursel |
emsettabstops |
mdimaximize |
querynewpalette |
tcnsetfocus |
vbxevent44 |
|
cbseteditsel |
emsetwordbreak |
mdinext |
queryopen |
timechange |
vbxevent45 |
|
cbsetextendedui |
emsetwordbreakproc |
mdirestore |
queuesync |
tvnenterkey |
vbxevent46 |
|
cbsetitemdata |
emundo |
mdisetmenu |
quit |
uondragdrop |
vbxevent47 |
|
cbsetitemheight |
enable |
mditile |
rcresult |
uondragenter |
vbxevent48 |
|
cbshowdropdown |
enchange |
measureitem |
renderallformats |
uondragleave |
vbxevent49 |
|
changecbchain |
endsession |
menuchar |
renderformat |
uondragwithin |
vbxevent50 |
|
char |
enerrspace |
menuselect |
renhscroll |
uonexternal01 |
vkeytoitem |
|
chartoitem |
enhscroll |
mmjoy1buttondown |
renvscroll |
vbxevent01 |
vscroll |
|
childactivate |
enmaxtext |
mmjoy1buttonup |
sbnbottom |
vbxevent02 |
vscrollclipboard |
|
commnotify |
enteridle |
mmjoy1move |
sbndragdrop |
vbxevent03 |
windowposchanged |
|
compacting |
enupdate |
mmjoy1zmove |
sbndragenter |
vbxevent04 |
windowposchanging |
|
compareitem |
envscroll |
mmmcinotify |
sbndragleave |
vbxevent05 |
wininichange |
|
ctlcolor |
erasebkgnd |
mmmimclose |
sbndragwithin |
vbxevent06 |
Selected |
|
ddeack |
fontchange |
mmmimdata |
sbnendscroll |
vbxevent07 |
OMNDragLeave |
|
ddeadvise |
getdlgcode |
mmmimerror |
sbnkillfocus |
vbxevent08 |
nclbuttonup |
|
ddedata |
getfont |
mmmimlongdata |
sbnlinedown |
vbxevent09 |
|
|
ddeexecute |
getminmaxinfo |
mmmimlongerror |
sbnlineup |
vbxevent10 |
|
|
ddepoke |
gettext |
mmmimopen |
sbnpagedown |
vbxevent11 |
|