2012-05-10
SAP PI courses
https://training.sap.com/de/en/course/tbit40-sap-netweaver-process-integration-classroom-095-g-en
TBIT44 PI Message Mapping and BPM
https://training.sap.com/de/en/course/tbit44-pi-message-mapping-and-bpm-classroom-095-g-en/
2012-04-12
把安装有win 7的笔记本变成无线路由器
如果无线网卡支持virtual wi-fi,以管理员身份在命令行下执行
netsh wlan set hostednetwork mode=allow ssid=jia key=MyPassword keyUsage=persistent
netsh wlan start hostednetwork暂停wlan, net wlan stop hostednetwork
取消虚拟网卡, netsh wlan set hostednetwork mode=disallow
或者创建一个快捷方式:
Target [C:\Windows\System32\cmd.exe /c "netsh wlan set hostednetwork mode=allow ssid=jia key=MyPassword keyUsage=persistent && netsh wlan start hostednetwork && pause"]
From Properties=>Shortcut page:
Tick [Advanced=>Run as Administrator]
Icon from "%SystemRoot%\System32\WlanMM.dll"
2012-04-05
国际化团队
2011-11-30
SAP GUI 710 显示bug
SAP GUI的版本信息:
Release: Final Release 710
Dateiversion: 7100.4.16.1046
Build: 1128319
Patch-Level: 16
2011-11-15
Bahncard的变种
优点:购买后不会自动延长,一年后自动结束。另外办理这种卡不需要照片。
缺点:价格比普通的Bahncard更贵。更糟糕的是购票时只有持有Bahncard Business才能享受10%的大客户优惠,而以前则是只要使用公司的信用卡支付就可以自动享受购票9折。
2011-11-14
vim读取临时文件出错
line 83
E484: Can't open file C:\tmp\VIo24EF.tmp
在windwos下定义了TMP变量为C:\tmp,猜想问题应该出在这个临时文件没有正确生产,导致无法读取。使用 :help E484查看帮助,得到解释:
*E484* *E485* >查看vim手册,得到解释:
Can't open file {filename}
Can't read file {filename}
Vim cannot read a temporary file.
Can't open file C:\TEMP\VIoD243.TMPctags 确认是在路径里,所以只能是调用外部命令没有成功执行。查看shell设置(set shell?)得到:
On MS-Windows, this message appears when the output of an external command was to be read, but the command didn't run successfully. This can be caused by many things. Check the 'shell', 'shellquote', 'shellxquote', 'shellslash' and related options. It might also be that the external command was not found, there is no different error message for that.
shell=C:\Windows\system32\cmd.exe;C:\users\dingjun.jia\documents\programme\SysinternalsSuite不知道是自己不小心把环境变量ComSpec定义错了,还是安装SysinternalsSuite套件时,这个变量被修改了。换用了gvim 32bit版本,修正shell设置后,不在出现错误。
windows 7下几个有用的快捷键
- Ctrl+Shift+N: 在Windows Explorer中创建新文件夹
- Win + X: 调出windows mobility center,可以更改屏幕显示亮度,声音,无线网络等设置
- Alt+Up: 在Windows Explorer中向上一级目录跳转
- Alt+P: Toggles the preview pane in Windows Explorer
- Shift+Right-Click on a file: 在右键菜单中增加复制文件所在的目录.
- Shift+Right-Click on a file: Adds extra hidden items to the Send To menu.
- Shift+Right-Click on a folder: 在右键菜单中增加Command Prompt Here
- Win+P: 调整显示屏幕输出
- Win+(+/-): 放大或缩小屏幕
- alt + space, then n: 最小化当前激活的窗口
- alt + space, then x: 最大化当前激活的窗口
2011-11-10
Excel 2010下仅显示重复内容
conditional formatting ->highlighting duplicate value,然后点击Data菜单下的filter,在filter上选择filter by colour即可。
2011-11-09
SAP PI 7.11 Runtime Workbench
PI 7.11 monitoring
http://help.sap.com/saphelp_nwpi711/helpdata/en/48/aeb1925bb5356be10000000a421937/content.htm
PI 7.0 Runtime Workbench
http://help.sap.com/saphelp_nw04/helpdata/en/88/21bc3ff6beeb0ce10000000a114084/content.htm
Runtime Workbench用于监控PI的各个组件的运行情况,包括下列功能:
Component Monitoring
其中包括Integration Engine
Business Process Engine
Mapping Runtime
Adapter Engine
Proxy Runtime
Message-Monitoring
下面包括Integration Engine
Adapter Engine
Proxy Runtime
End-to-End-Monitoring
Performance-Monitoring
Index-Administration
SLD-Registrierung
用于注册以下组件到SLDAdapter Engine
Runtime Workbench
Integration Directory
Intgeration Repository
Configuration
Alert-Konfiguration
定义 alert category 和 alert ruleAlert-Inbox
Cache-Monitoring
监视不同组件的Cache更新状况Integration Server (ABAP Cache, including cache object: party, communication component, channel, receiver agreement, sender agreement, interface determination, operation mapping, integration process, process component, alert category)
Central Adapter Engine (including cache object: party, communication component, channel, receiver agreement, sender agreement, adapter metadata, SWCV)
Mapping Runtime Cache ( including Cache object: Value mapping group, mapping progam, SWCV, Channel)
2011-11-02
oulook 2010的邮件索引问题
最近发现search folder下的文件下总不能自动更新,查看被禁用的addin包括windows search Email indexer mssphtb.dll。启用后重启outlook,又自动被禁用。新建了mail profile也无济于事。后来发现问题根本不在这个addin上,因为根据微软的KB http://support.microsoft.com/kb/2385524, 这个addin在outlook 2010里本身就是被禁用的。
After you install Outlook 2010, you may see the Windows Search Email Indexer add-in listed under Disabled Application Add-ins. This behavior is by design.安装完service pack 1后问题还是存在。
vim下以tab方式打开文件
:tabnew | b 2 (把buffer 2以tab的方式显示)
如果要直接以tab的方式来打开,在 _gvimrc 中添加:
if (&diff==0)很奇怪,这样虽然能以tab的方式打开文件,可是后打开的文件没有syntax highlight。
:autocmd BufReadPost * tab ball
endif
改成下面的设置就没问题:
:au BufAdd,BufNewFile,BufRead * nested tab sball:bn 切换到下一个tab,:bp 切换到上一个tab,gt 在tab之间切换。
2011-10-27
PI useful URLs
Design Time
http://<host>:5<sys>00/dir/start/index.jsp Process Integration PI 7.1 tools
http://<host>:5<sys>00/sld/index.html System Landscape Directory (SLD)
http://<host>:5<sys>00/rep/start/repository.jnlp Enterprise Services Repository (ESR)
http://<host>:5<sys>00/rep/support/public/LockAdminService Unlock Enterprise Service objects
http://<host>:5<sys>00/dir/start/directory.jnlp Integration Directory(ID)
http://<host>:5<sys>00/sr Service Registry(SR)
Runtime
http://<host>:5<sys>00/rwb Runtime Workbench(RWB)其它:
http://<host>:5<sys>00/nwa Local SAP Netweaver Administrator (NWA)
http://<host>:5<sys>00/nwa/quicklinks NWA Quicklinks
http://<host>:5<sys>00/nwapi Central SAP Netweaver Administrator (Visual Admin in XI)
http://<host>:5<sys>00/index.html Netweaver Application Server Java
http://<host>:5<sys>00/CPACache CPA Cache Monitoring
http://<host>:5<sys>00/CPACache/refresh?mode=delta Delta CPA Cache refresh
http://<host>:5<sys>00/CPACache/refresh?mode=full Full CPA Cache Refresh
http://<host>:5<sys>00/mdt Message Display Tool (MDT)
http://<host>:5<sys>00/mdt/channelmonitorservlet Communication channel Monitoring
http://<host>:5<sys>00/mdt/amtServlet Adapter Monitoring
http://<host>:5<sys>00/AdapterFramework/admin/channelstatus.jsp Communication channel Status
http://<host>:5<sys>00/MessagingSystem Message Display Tool
http://<host>:5<sys>00/MessagingSystem/monitor/sequenceMonitor.jsp EOIO Sequence monitor
http://<host>:5<sys>00/MessagingSystem/monitor/systemStatus.jsp Message Queue monitor
http://<host>:5<sys>00/TREX/Monitor TREX Application
http://<host>:5<sys>00/rwb/rtc?op=init Re-Initialize Runtime Workbench
http://<host>:5<sys>00/utl/UsageTypeInfo information about useage types
2011-10-21
短途行车导致电池电量不足
去之前google了一下这个问题,网上大部分的讨论都是说电池出问题的可能性很大。我提出给检查一下是否电池有问题,如果有问题,就换一个吧。维修人员先开出了一个检查费用报价,含税155.17欧元。这仅仅是检查的费用。一个电池含税价要215.07欧元(Teilenummer: 61 21 8 381 768),不知道是AGM还是GEL电池,也不知道是多少安培的。这还不包括安装电池的费用,据说如果新换了电池还要在车载电脑Energiemanagement里重新注册一下才能给新电池正常充电。维修人员建议购买一个充电器,定期给电池充电,解决短途行车导致电池充电不够的问题。BMW提供的充电器(Teilenummer: 61 43 2 153 788)的含税价格刚好100欧元(看工作人员电脑显示物料管理用的是SAP)。所有的费用Europlus Garantie都不管,得自掏腰包。
网上的一个讨论:
ca. 30 min bis 1 Std sollten zum Aufladen der Batterie in Ordnung sein. Eine durchschnittliche Lima liefert ca. 50-80 Ampere, Licht, dicke Anlage und Heckscheibenheizung aus, bleiben noch die Verbraucher zur Funktion der Motorsteuerung, sagen wir...10 Ampere, grosszügig bemessen.
Eine durchschnittliche Batterie hat eine Kapazität von ca. 36 - 80 Amperestunden. Einfache Rechnung:
36 Ah Batterie,
80 Ampere Lichtmaschine - 10 Ampere Verbraucher...Ergo 70 Ampere...
Dann ist die Batteie theoretisch in ner halben Stunde voll.
Bei normalem Fahrbetrieb z.B- täglich 15 Km zur Arbeit sollte mit der Leistungsfähigkeit der Batterie nix passieren. Wenn Du aber mit dem Auto nur ins Dorf zum Einkaufen fährst, wohlmöglich noch bei kalten Temperaturen, Heckscheibe und Licht an, hat die Batterie keine Chance vernünftig geladen zu werden.
Wenns das alles nicht ist, sollte vielleicht mal ne neue Batterie her. Manche geben nach drei Jahren den Geist auf, andere wiederum halten 3x so lange. Da steckt man halt nicht drin.
2011-10-20
BWM E60/E61 隐藏菜单
Grundmenü am Bordmonitor einschalten
Controllerknopf 10 sec gedrückt halten
3 mal rechts
3 mal links,
1 mal rechts
1 mal links
1 mal rechts
1 mal drücken
fertig
一会儿左三圈,一会儿右三圈,感觉跟开个保险箱似的 :)
2011-08-24
download SAP Netweaver Development studio
SAP Netweaver Development studio
https://nwds.sap.com/swdc/downloads/updates/netweaver/nwds/ce/
OSS user required
用firefox浏览器下载超过1G的文件还是不太可靠,到快下载完时程序容易死掉,最好还是用wget。
wget --user=USER --password=PWD --no-check-certificate https://nwds.sap.com/swdc/downloads/updates/netweaver/nwds/ce/710/NWDS_platform.zip
2011-08-05
Android启动时间过长
08-05 09:08:53.396: ERROR/ServiceManager(2850): set property for kill mediaserver process
08-05 09:08:53.396: INFO/ServiceManager(2850): Waiting for sevice media.audio_flinger...
08-05 09:08:54.398: ERROR/ServiceManager(2850): set property for kill mediaserver process
08-05 09:08:54.400: INFO/ServiceManager(2850): Waiting for sevice media.audio_flinger...:
杀掉这个等待进程后又进入下一次循环,最后又处于黑屏等待状态。希望能尽快解决这个问题。
2011-07-28
命令行工具puttycyg
2011-07-07
PI lookup use缺少权限
The table that contains all authorization objects is TOBJ.
The table that contains all activities is TACT.
The table that contains definition of all authorization groups is TBRG.
使用表AGR_USERS查找用户的role。查看一个authorization role 包含哪些authorization object,使用表 AGR_1251
2011-05-15
SAP NetWeaver Process Orchestration
SAP NetWeaver BRM
SAP NetWeaver PI
三者合起来就是SAP NetWeaver Process Orchestration?
2011-05-02
PI message mapping editor shortcut
2011-03-28
debug su01
breakpoints -> breakpoints at ->breakpoints at Subroutine,在Program处填入saplsuu0,在Fmla处填入auth_check。
2011-02-08
Tutorial: Defining an Integration Process
http://help.sap.com/saphelp_nw73/helpdata/en/69/4ad13fa69a4921e10000000a1550b0/frameset.htm
Defining an Integration Process
http://help.sap.com/saphelp_nw73/helpdata/en/ae/fd773f12f14a18e10000000a114084/frameset.htm
2011-01-20
解决jdownloader窗口不能选择正确的显示器
在办公室把笔记本和另外一个显示器连了起来,把笔记本设置为主显示器,画面扩展到大的显示器上。问题出在当把笔记本与外接显示器断开时,启动jdownloader后,jdownloader窗口不能正常显示在笔记本的屏幕上,似乎“显示”在已经没有连接的外接显示器上。鼠标移动到任务栏的图标上,可以看到窗口的缩略图,可就是不能把窗口拽回来。上次就遇到过这样的情况,当时刚好遇上电视开着,就把笔记本与电视连了起来,把窗口拽了回来。这次从办公室回来又发生这样的情况,以为重启启动一下电脑会解决这个问题。没想到重启后还是同样的问题,只好另寻出路。试了一下,这个方法管用。将鼠标移到任务栏的图标上,显示程序缩略图,然后单击右键出现菜单,选择移动,此时千万不要移动鼠标,而是移动左方向键,窗口就回来了!
这个问题好像和java有关,因为上次用的SAP download manager也是用java写的,也有同样的问题。
2011-01-15
XSLT 1.0处理分组
<row>
<column1/>
<column2/>
<column3/>
</row>
其中column1,column2,column3是JDBC adapter中SQL查询语句里select的表列。
这个问题通过graphic mapping的node function估计应该能解决,但没有例子和好的文档就先放弃了,改用XSLT来实现。现在读取出来的数据中有一列为INVOCIE_ID,同一个INVOICE下有多个line_item。为每一个INVOICE _ID应生成一个IDoc,所有具有相同INVOICE_ID的line_item要映射到同一个IDoc下。如果环境支持 XSLT 2.0,可以很方便的使用group-by解决分组的问题。试了一下SAP PI环境不支持group-by语句,只能使用XSLT 1.0支持的语句。一个名为Muenchian的方法颇为有名,使用了xsl:key语句和key函数,提高了XSLT处理分组的性能。一个简化的例子:
XML 源文件
<?xml version="1.0" encoding="UTF-8"?>
<MT_PTP_PURCHASEINVOICE>
<row>
<INVOICE_ID>12</INVOICE_ID>
<INVOICE_CURRENCY>EUR</INVOICE_CURRENCY>
<LINE_NUMBER>1</LINE_NUMBER>
</row>
<row>
<INVOICE_ID>12</INVOICE_ID>
<INVOICE_CURRENCY>EUR</INVOICE_CURRENCY>
<LINE_NUMBER>2</LINE_NUMBER>
</row>
<row>
<INVOICE_ID>13</INVOICE_ID>
<INVOICE_CURRENCY>EUR</INVOICE_CURRENCY>
<LINE_NUMBER>1</LINE_NUMBER>
</row>
<row>
<INVOICE_ID>13</INVOICE_ID>
<INVOICE_CURRENCY>EUR</INVOICE_CURRENCY>
<LINE_NUMBER>2</LINE_NUMBER>
</row>
</MT_PTP_PURCHASEINVOICE>
XSLT 表单
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:key name="mykey" match="row" use="INVOICE_ID"/>
<xsl:template match="/">
<doc>
<xsl:for-each select="//row[count(. | key('mykey', INVOICE_ID)[1]) = 1]">
<xsl:sort select="INVOICE_ID"/>
<invoice>
<INVOICE_ID>
<xsl:value-of select="INVOICE_ID"/>
</INVOICE_ID>
<items>
<xsl:for-each select="key('mykey', INVOICE_ID)">
<xsl:sort select="LINE_NUMBER"/>
<line>
<xsl:value-of select="LINE_NUMBER"/>
</line>
</xsl:for-each>
</items>
</invoice>
</xsl:for-each>
</doc>
</xsl:template>
</xsl:stylesheet>
2011-01-11
XSLT下填充空白字符
如果要常用到,定义一个template,带两个参数。
<xsl:template name="pad">
<xsl:param name="str"/>
<xsl:param name="len"/>
<xsl:variable name="spaces"><xsl:text> </xsl:text></xsl:variable>
<!-- <xsl:text>在这里很重要,避免空白字符被过滤掉 -->
<xsl:value-of select="substring(concat($s, $spaces), 1, $len)"/>
</xsl:template>
需要时调用这个template即可:
<xsl:variable name="var">
<xsl:call-template name="pad">
<xsl:with-param name="str" select="concat(firstname, ', ', name)" />
<xsl:with-param name="len" select="10" />
</xsl:call-template>
</xsl:variable>
更灵活一些的template,'padVar' 是要填充的字符, 'length' 是给定的长度。
在前面插入,右对齐: <xsl:template name="prepend-pad"> <!-- recursive template to right justify and prepend--> <!-- the value with whatever padChar is passed in --> <xsl:param name="padChar"> </xsl:param> <xsl:param name="padVar"/> <xsl:param name="length"/> <xsl:choose> <xsl:when test="string-length($padVar) < $length"> <xsl:call-template name="prepend-pad"> <xsl:with-param name="padChar" select="$padChar"/> <xsl:with-param name="padVar" select="concat($padChar,$padVar)"/> <xsl:with-param name="length" select="$length"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:value-of select="substring($padVar,string-length($padVar) - $length + 1)"/> </xsl:otherwise> </xsl:choose> </xsl:template> 在后面插入,左对齐: <xsl:template name="append-pad"> <!-- recursive template to left justify and append --> <xsl:param name="padChar"> </xsl:param> <xsl:param name="padVar"/> <xsl:param name="length"/> <xsl:choose> <xsl:when test="string-length($padVar) < $length"> <xsl:call-template name="append-pad"> <xsl:with-param name="padChar" select="$padChar"/> <xsl:with-param name="padVar" select="concat($padVar,$padChar)"/> <xsl:with-param name="length" select="$length"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:value-of select="substring($padVar,1,$length)"/> </xsl:otherwise> </xsl:choose> </xsl:template>
2011-01-10
galaxy s 的几个常用按键操作
- 快速重启:同时按住 加大音量和电源键 5秒钟。这样不必按住Power键,选择关机,然后再按Power开机。
- 调出搜索框:长按住菜单键
- 切换任务:长按住Home键
- 在联系人里,往右滑动,拨打联系人电话,往左滑动,发送短信
2011-01-06
启动android SDK manager
'java -jar lib\archquery.jar' is not recognized as an internal or external command,google了一番,禁用了windows 7的UAC,用管理员权限执行命令,都是同样的结果。既然变量ANDROID_SWT没有被赋正确的值,直接在
operable program or batch file.
ERROR: SWT folder '' does not exist.
Please set ANDROID_SWT to point to the folder containing swt.jar for your platform.
for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
后面加上了:
set swt_path=lib\x86_64
在执行android.bat得到错误提示就比较有帮助了:
Cannot load 64-bit SWT libraries on 32-bit JVM因为windows操作系统是64位的,而我装的JDK是32位,为了运行SAP PI 7.0的客户端,因此64位的swt.jar不能加载。修改为:set swt_path=lib\x86 就能正常启动了。
新手机Samsung Galaxy I9000的版本
PDA: I9000BOJPB (This is android and all the applications that come with it.)
PHONE: I9000BOJP3 (This is the firmware of the wireless chipset of the device and will operate you WiFi, Blutooth and 3G/2G/GSM connections. 这就是常说的Radio ROM)
CSC: I9000GDTMJP6 (Customer Specific Customization)
build info: 2010.11这个在刷机的时候检查版本会用到。
soft reset: 按住机身右边电源键
hard reset:按住 VolumeUP+Home+Power,选择“wipe data/factory reset”,恢复到默认设置 (我的手机的这个组合键好像被禁用了,不管用!)
*#1234# : SW Version
*#2222# : HW Version
*#0842# : Vibrator Test
*#0289# : Buzzer Test
*#0228# : Battery Statue
2011-01-04
导入以前的posts
2010-12-16
XML Tagung in Stuttgart
2010-12-14
在XSLT中调用Java函数
当XSLT文件和Java class文件位于一目录下,经过测试,在Altova XML Spy下,命名空间需要声明为:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:myns="java:Test" exclude-result-prefixes="myns">
其中需要注意的是在xmlns:myns="java:Test" exclude-result-prefixes="myns"中,java不能省掉,Test为Java class的名字,否则Altova 的XSLT processo找不到声明的Java class,会返回ClassNotFound exception。
而在SAP PI 7.0环境下,声明自定义的命名空间必须去掉“java:”,否则也会出现找不到Java class的错误。
示例:
XSLT文件:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:myns="java:Test" exclude-result-prefixes="myns">
<xsl:template match="/">
<root>
<text><xsl:value-of select="myns:foo(‘hello’, ‘world’)" /></text>
</root>
</xsl:template>
</xsl:stylesheet>
Java class:
public class Test {
public static String foo(String str1, String str2) {
return str1 + “ ” + str2 ;
}
}
2010-12-13
XPATH点滴
/ 符号:以前基本上认为就是在轴上分隔不同的节点。更广义的理解是这是一个高阶的运算符。比如$EXP1和$EXP2 分别为两个节点集合,那么$EXP1/$EXP2表示对$EXP1中的每一个节点对$EXP2求值,$EXP1/$EXP2的值即为:对$EXP1中每个节点对$EXP2求值的集合。
对轴的理解:轴实际上是一种节点间一对多的映射,可以把轴理解为一种函数,输入为一个单个节点,输出为与该节点有某种关系的节点的集合。
(@code,"N/A")[1]:如果code属性的值不为空,那么这个表达式的值即为code属性的值,否则返回”N/A”。因为当code属性的值为空时,通过运算符逗号 “,” 创建的sequence只有一个item即”N/A”,筛选条件[1]选择sequence中第一个元素。
2010-12-10
实物恋
2010-12-09
不能加载SAPJCORFC
system32,可是仍然得到错误:Exception in thread "main" java.lang.ExceptionInInitializerError: JCO.classInitialize(): Could not load middleware layer 'com.sap.mw.jco.rfc.MiddlewareRFC'很明显是找不到sapjcorfc.dll,所以不能加载。把sapjcorfc.dll和librfc32.dll这两个文件复制到jdk的bin目录下,也就是上面错误中的第一个目录中,就能正确加载了。难道java只在目录列表中的第一个目录去寻找。
JCO.nativeInit(): Could not initialize dynamic link library sapjcorfc [no sapjcorfc in java.library.path]. java.library.path [C:\Program Files (x86)\Java\jdk1.5.0_22\bin;.;C:\Windows\system32;C:\Windows;C:\Program Files (x86)\Java\jdk1.5.0_22\bin; C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ThinkPad\Bluetooth Software\;C:\Program Files\ThinkPad\Bluetooth Software\syswow64;C:\Program Files (x86)\Windows Live\Shared;c:\cygwin\bin;C:\Users\dingjun.jia\Documents\Data\UnxUtils\usr\local\wbin;C:\Users\dingjun.jia\Documents\Data\projects\o2 SAP\cmd;]
at com.sap.mw.jco.JCO.<clinit>(JCO.java:820)
at JM_I025B.countVendorData(JM_I025B.java:26)
at JM_I025B.main(JM_I025B.java:10)
2010-11-24
2010-11-23
PI 7.1与PI7.0的比较
Name changes PI 7.0 -> PI 7.1
Integration Repository (IR) -> Enterprise Service Repository (ESR)message interface -> service interface
interface mapping -> operation mapping
business service -> business component
Features of PI 7.1 over PI 7.0
a) Repository Objects
- Service Registry (SR) is to support publishing, classifying, discovering services.
- Service Interfaces (SI) may contain several operations where each operation describes one communications (Synchronous / Asynchronous). The various attributes are Category (I/O/A), Mode(S/A), Interface Pattern & Operation Pattern
- Interface patterns is a new attribute of a service interface that describes the type of communication that is to be executed on the message (Stateless/ Stateless Xi 3.0 Compatible / TU&C/C and Stateful)
- Operation Patterns depends on Interface patterns (Normal / Commit/ Rollback / Confirm/Tentative Update/Compensate)
- SAP Global Data type (GDT) is introduced to have business semantics in order to replace SAP Core DT
- Folders are introduced to organize projects and interfaces which have access authorizations
- We can use either XML toolkit / JDK 1.5 toolkit for JAVA and XSLT Mapping.
b) Mapping Enhancements
- We can set Failure Behavior in fix values and value mapping (Return initial value/Default/Exception)
- Output of fields and functions can be used for multiple target fields for Reusable / Better Runtime Performance
- Tool support to adjust the mappings after the structure changes to avoid structural inconsistencies.
- Storing intermediate Results in a variable can be possible and can be reused.
- Complete copy of XML sub trees is possible
- Parameterized mapping is useful for Channel Lookup and Reuse of multiple mapping in Interface Determinations and to transfer content of Container in UDF.
- Function Libraries is useful for reuse of UDF and enhanced portability of UDF.
- Graphical Support of RFC Lookup and JDBC Lookup is available.
- Importing SQL Tables Meta Data is possible
c) ccBPM
- Step Groups - Set of steps that can be reused by embedded in Integration Process across SWCV. Step Parameters can also be used in step groups.
- Configurable Parameters - Defined in Integration process and the values can be used assigned in ID. Here Agents, Communication channel and simple data type can be used as parameters.
- User Interaction - User Decision Step in Integration Process with an agent configured in ID is used to get the workflow message to make a decision
d) Configuration Objects
- Web Service Reliable Messaging WS-RM for Asynchronous messaging is configured in Sender Agreement and Communication Channel for a considerable level of reliability and security.
- Principal Propagation based on Security Assertion Markup Language (SAML 1.1) can be configured in WS adapter. It means user is securely propagated from a sender system to receiver systems. An authorization check in receiving system based on original user.
- Advanced Adapter Engine (AAE) is used to increase the performance of message processing by eliminating the need for ABAP stack during the process.
- Reusable Receiver Rules for logical routing can be used in different Receiver Determination.
- Cache Notification function is enhanced to analyze the possible error.
- XML Payload validation is possible in sender and Receiver agreement.
- Publish the sender agreement in Service Registry for web service Client and provider connected to IS.
- Centralized administration and monitoring is done by SAP NetWeaver Administrator.
- Message Packing enables processing bulk messages in one service call and reduce context switches
2010-10-27
XSLT SAP PI 7.0
- 不支持xpath 2.0下表示两个节点集合的xpath运算符intersect。Dr. Kay在很多年前就提出在xpath 1.0下的替代表达式 $ns1[count(.|$ns2) = count($ns2)]倒是派上了用场,只是效率差些。
- 不支持XPATH 2.0下的函数current-date。XPATH 1.0里根本就没有针对date和time的函数,在XSLT下通常只能通过传递参数给stylesheet才能解决这个问题。不过这个问题倒是借助SAP PI的运行环境能解决,因为它提供一些参数,只需在stylesheet下声明一下就可以使用如:
<xsl:param name="TimeSent" />SendTime的值的格式为:YYYY-MM-DDTHH:MM:SSZ
更多可供使用的参数见:http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/frameset.htm
2010-10-21
暂时远离64位应用
之前没仔细阅读64bit office 2010的release note。在msdn下载安装完后才发现问题不少。首先是64位的Outlook 2010与Windows mobile device center不兼容。和我的HD2同步时显示错误提示:
Either there is no default mail client or the current mail client cannot fulfill the messaging request. Please run Microsoft Outlook and set it as the default mail client.
google了一番之后才知道这是一个64bit office 2010的已知问题,尽管问题并不是在64 bit的Outlook 2010这个产品上。微软在2010年5月份就发布一篇KB( http://support.microsoft.com/kb/980513/en-us )描述了这一问题。不能同步的原因在WMDC(windows mobile device center)上,不过软件巨人微软根本不打算修正这一问题(There are no plans to update Windows Mobile Device Center to improve compatibility with Outlook 2010),强迫用户用户要么换回32位的Office应用程序,要么更换手机!我相信为windows phone 7开发的同步软件肯定会修正这一问题,但是那些还没有使用windows phone 7的用户就这样被抛弃了。如此微软怎么能期望更多的用户使用基于windows mobile的手机。很想知道微软如果修复这样一个问题需要多大的开销。
另外一个软件巨人的免费产品google calendar sync也不能和64位的Outlook实现同步。google也是不推出任何更新已解决这个很多用户反映了很久的问题。
2010-10-07
SAP PI 7.11 Integrated Configuration
How To configure Integrated Configuration
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/700058f0-b1a1-2a10-39a8-ab2627b87cfa?overridelayout=true
2010-10-06
vim下移动到特定列
在google中查找这个用法是,先用关键字 vim jump to column查找,估计是因为关键字jump的原因,结果中出现了很多在不同tag之间跳转的结果,后来换成vim move to column,查询结果就好多了。
2010-09-01
在公司工作3年了
2010-08-27
2010-08-25
更换HTC HD2
发来的传真说,周四通过GLS送货并取走坏的手机。没想到的是周二上午10点多GLS送货的人就到家门口了。从效率上来看,倒真是不赖,街名拼写错误也如此迅速地送到了。可是如果我真按传真上写的送货时间周四来计划,岂不是这效率也白搭。
2010-08-23
更换热水管阀门
周日中午GK又惊呼没有热水了,于是我直奔地下室查看储水罐的水压力表。果不其然,压力表又变为零了。2个月前才加的水似乎又跑光了。以前就注意到有两个阀门有点漏水,但没想到越来越厉害。这两个阀门在从储水罐出来的Speichervorlauf和Speicherrücklauf这两根管子上,都位于Fermwärme设备的大盒子内。不打开大盒子盖是不容易发现漏水情况的。徒劳地往上缠了些胶条和布条,又来回关上打开折腾数次,阀门转动部分与阀门的接触缝隙似乎越来越大,漏水反而越来越大。这下搞不定了只能请教专家了。周一专家过来,把阀门卸了下来,上了些润滑油试图能阻止漏水情况,可是效果不理想,只能买新的阀门来换掉无法修理的坏阀门。麻烦的是这种阀门不是普通的标准阀门,普通的建材市场如Hornbach之类的根本没有,只好去专业的管道建材商店。
拿出黄页一翻,先找到了一家在Rappstraße的店。拿着画的尺寸图和拍的照片和黄页就出发了,带着黄页是怕万一没买到会多跑几家店。果然第一家店就没有这样的阀门,不过店员态度很好,推荐我去位于Intzestraße的一家名为Stapf的商店,离Porsche中心很近。马上赶了过去,店员态度也很好,拿着图纸上后面去找了很久出来了。虽然没有完全一样的阀门,不过找到了替代品。买了两个回家,简单一试,果然相配,再把专家请了过来才把两个阀门正式安装上。此后关于热水的问题应该能消停一段时间了!
2010-08-22
从SD卡更新HD2 Rom
* der Akku des HD2 sollte mindestens 80% geladen sein um fortzufahren
* schließe den HD2 wieder an den PC an und wähle im automatisch erscheinenden Menü > Festplatt (Disk Drive)
* entpacke mit 7zip das Rom von HTC welches du z.B. hier gefunden hast
* unter den entpackten Dateien befindet sich die Datei RUU_signed.nbh welche du umbenennen musst in LEOIMG.nbh
* kopiere die Datei LEOIMG.nbh aud die SD Karte des HD2
* trenne nun den HD2 vom PC und schalte ihn aus
* drücke und halte jetzt die Volume Down (leise) Taste
* drücke nun zusätzlich die Power Taste und halte beide 5 Sekunden
* wenn ein Menü auf dem Display angezeigt wird kannst du los lassen
* starte den flash Vorgang durch kurzes drücken der Power Taste
* der Vorgang kann bis zu 15 Minuten dauern und darf nicht unterbrochen werden
* wenn der Vorgang abgeschlossen ist drücke den kleinen roten Restknopf unter dem Akkudeckel (neben dem MicroSD Karten Slot)
* nun startet der HD2 neu und sollte das Betriebssystem laden
其中按住降低音量和电源键5秒钟很重要!
从SD卡更新Rom后,显示:
RADIO_V2 – OK
RCUST – OK
BOOTLOADER – OK
SPLASH1 – OK
OS – OK
CONFIGDATA – OK
RUU_WALLPAPER1 – OK
RUU_WALLPAPER2 – OK
Update Complete
Update SUCCESS
2010-08-19
enable Acrobat key shortcut
记的低一点版本的Acrobat在安装完后是默认启用快捷键的,如Acrobat 6。在Acrobat 9中却是默认不启用这个功能。要启用快捷键可在设置中更改。
Edit – Preference – General 中选中 Use Single-Key Accelerators To access tools
2010-05-01
试用HTCHD2
公司的手机可以续合同了,公司提供HTC HD2这款手机。考虑到这款手机的大显示屏和算是不错的硬件配置便毫不犹豫地订了这款手机。周二发的邮件订手机,周五就到了。效率还算是不错。
试用了一会儿,目前发现的问题有:
reset键在里面,必须打开电池后盖才能reset
没有触笔,在选择下拉菜单选项时很难选中
新拿到手免不了要自己刷机,访问各种论坛。一些基本术语是必须要掌握的,如:
LEOIMG.nbh/ruu_signed.nbh/[Randomname.nbh] - These are all the actual roms, the things you need to flash, usually they are called one of the first two names, but some rom chefs give their own names to the roms, but you can always distiguish which file you need as it will always be a "nbh" file and will always be the largest file in the archive/folder
SPL - Secondary Program Loader: Loads the actual OS. (The SPL is what lets you flash the different aspects of your device, however the stock SPL is 'CID Locked' which means only official releases from HTC can be installed.
HSPL - A 'custom' SPL created by the dark forces team (bepe and cotulla), this is CID Unlocked and it lets you install custom roms and flash any radio. The reason it is called 'Hard' is because it stays on your device after a flash, unlike 'Soft' SPL which is removed after a flash.
RUU - The official 'Rom Update Utility' from HTC which is used to do all your flashing from your pc, its essentialy a nice user interface for the SPL
CustomRUU - The custom Rom Update Utility from the dark forces team which is designed to be used with the HSPL
ROM - An operating system build from HTC, updated to bring you the newest functions and fixes
Custom/Cooked ROM - An operating system build built on a stock rom, these are created by 'Chefs or Cooks' who use 'Kitchens' to design their own roms to release to the community, these are usually alot better than stock roms and contain lots of custom tweaks from others in the xda community.
更多术语可以参考xdadeveloper的wiki页面:http://wiki.xda-developers.com/index.php?pagename=Glossary
2010-04-18
没有热水?
这周一又发生没有热水了,症状与上次一样,只是没有“自我修复”。周四下午到家第一件事就是约Mainova的修理工,结果约到周五早上07:00的时间。修理工检查发现,室内热水循环系统的压力变为了0 Bar,正常的数值应为2Bar。修理工清洗了Schmutzfänger(其实这个应该与我的问题无关),然后拿了一根管子连接水龙头往热水循环系统里加水,直到水压升到2Bar为止。据说自来水水龙头的水压在5 ~ 6 Bar左右,经过室内的减压装置水压变为4Bar。
在网上看到在给暖气放气要注意的事项:
Wichtig: Jeh nach Anzahl der zu entlüftenden Heizkörper und Größe des Heizkreislaufs ist es wichtig, daß nach dem Entlüften Wasser in den Heizkreislauf nachgeführt wird, weil der Druck durchs Entlüften abnimmt. Der otpimale Druck liegt in einem Einfamilienhaus bei ca 1,2-1,5 Bar. Unter 1 Bar sollte er nicht fallen. Zu hoch sollte er auch nicht sein, da die Pumpe sonst schwerer arbeiten muß (Verschleiß, Stromverbrauch).
Das Wasser wird übrigens am Kessel wieder nachgefüllt....
Wenn viel Wasser nachgefüllt werden muß (viel frische Luft), sollte man nach 4-6 Wochen nochmal entlüften.
2010-03-14
认识一下Navigon的nfs文件
- Brunnel_EU.nfs: Positionen der Tunnel für schnellen Satfix
- CityModels_EU.nfs: Städte und ihre Gebäude so realistisch wie möglich 3D
- Landmarks_EU.nfs: zeigt Sehenswürdigkeiten und Sonderziele 3D
- MapDrawer.nfs: für die Darstellung der Karten zuständig
- poicats.nfs: Darstellung der Pois
- RealityView_EU.nfs: zeigt Beschilderung auf Autobahnkreuzen 3D
- sat_EU.nfs: Darstellung der Übersichtskarte ohne GPS-Empfang
- Terrain_EU.nfs: Darstellung der 3D Landschaften (Panorama View 3D)
- TMC.nfs: TMC (pro) empfangen
2010-03-09
o2 loop surf stick 2, Fehler 720
相信会有其他人在google中以标题中出现的单词作为关键字来查找解决办法的。
我的问题是在Lenovo R400下,操作系统为Vista Enterprise + SP1,使用O2的loop surf stick 2,碰到掉线时,不能重新拨号建立连接,modem的log文件里记录720错误:
A connection to the remote computer could not be established. You might need to change the network settings for this connection. For further assistance, click More Info or search Help and Support Center for this error number.(720)
每次必须重新启动电脑才能重新建立连接,让人无法忍受。
google了半天,终于找到了如下解决办法:
1. Services.msc ausführen
2. folgende Services als automatisch einstellen
- Telefonie
- RAS-Verbindungsverwaltung (rasman)
- Verwaltung für automatische RAS-Verbindung (rasauto)
3. Rechner neu starten
网上有Windows 7的用户也反映有这个问题,同样的办法估计应该有效!
2010-02-10
新笔记本让人失望
- S键掉下来了!!重新给按回去了,不过仍旧是松松垮垮的!
- 键盘的布局不一样了。ESC键被放置了最最上面,F1键取代了它的位置。这样按ESC的时候,总变成按F1键,可恶的是Vista下,windows的帮助似乎不是那么容易被禁用掉。。
- Control键和Fn键的位置也互换了一下。Control键用的很多,以前在左下角非常方便,不会在按Control时按成其他的键。现在却被夹在了Fn和Windows徽标键之间。这一点网上抱怨的人很多,以thinkpad swap fn control为关键字一查就知道了。原来IBM很早以前就是把Fn键放在左下角的。另外回车键也变小了些。
- 还有一点个人认为是设计上的缺陷。USB的口被设计成了与桌面垂直,而不是通常的与桌面平行。这样由于我的UMTS卡插上后,由于UMTS卡的宽度比笔记本要厚,这样要么把笔记本垫起来,要么把插UMTS卡的地方悬空。简直无语!
2010-01-22
Vista + SP1开机后出现黑屏
我手里没有Vista的安装盘,倒是有win 7。在此之前有个在一台笔记本上安装win 7的愉快经历。安装很快,并且所有的硬件驱动都自动识别并安装好驱动了,省了很多时间,因此建议他也改用win 7。没想到安装win 7后,硬盘狂转一阵后,也是漆黑一片。关机试图进安全模式,被告知因为安装还没有完成,安装程序不能在安全模式下进行。重启两次都戏。没办法只能把win xp的盘扔进去,再折腾一下自己。安装win xp后,启动后桌面能正常加载。
我原来夸下海口说半小时就能搞定,现在一看没戏了。朋友在旁边玩扑克,看我没解决问题,安慰说,没事,原来那样虽然麻烦点也能用。可是现在不能恢复成原来那个样了,只好拿着他的电脑灰溜溜回家了。回家google了一下,有人提到是BIOS的问题。去厂商的网页下了一个最新的BIOS,更新后,重装win 7,问题解决了!
我怀疑是安装SP 1后带来的问题,因为朋友的机器新买到时就是安装的Vista Home版本,用了一年多都没有这样的问题。总结两点:
1. 解决这类问题时间要估计的宽松一些,有时候半天都不一定能搞定
2. 手里一定得有另外一台能上网的电脑,带刻录机,有空白盘 :)
2009-11-10
SAP Utilities课程
- IUT110 Introduction to ISU/CCS
Level 3:
- IUT210 Basic Data/Basic Function
- IUT220 device management
- IUT221 work management
- IUT230 Billing and Invoicing
- IUT240 Contract Accounts Receivable and Payable
- IUT250 Customer Service
- IUT280 Print Workbench
- IUT225 Energy Data Management
- IUT235 Real Time Pricing
- IUT255 Integration of CRM, IS-U and BW
2009-11-06
IS-U基础
能源市场上的各个公司之间的数据通信采用统一的EDIFACT标准,使用的数据段类型包括:
- UTILMD:utility master data message
- MSCONS:meter service consumption report message
- REMDAV:remittance advice
- INVOIC:invoice message
- CONTROL:control message
- APERAK:application error and acknowledgement message
- REQDOC:require MSCONS
- ALOCAT:
UTILMD中包含的值(粗体为常见值):
category:
E01 = Anmeldungen (Netznutzung)
E02 = Abmeldungen (Netznutzung)
E03 = Änderungsmeldungen
E04 = Zuordnungsliste Abgänge
E05 = Zuordnungsliste Zugänge
E06 = Zuordnungsliste Lieferstellen
E07 = Lieferantenzuordnungsliste
E27 = Anfrage
E35 = Kündigung Liefervertrag
E40 = Bilanzkreiszuordnungsliste
E44 = Informationsmeldung (zur Auflösung der Lieferantenkonkurrenz)
E48 = Anmeldung Beistellung
E50 = Abmeldung Beistellung
transaction reason:
E01 = Ein-/Auszug
E02 = Einzug (Neuanlage)
E03 = Lieferantenwechsel
E04 = Ersatzbelieferung
E05 = Stornierung
E06 = Notversorgung
各个类型的值和具体构造可以参看 http://www.edi-energy.de .
2009-10-23
把电话设为音频拨号
家里这个Sigma电话(TAF890 D)虽然内置数字留言功能,不过出厂默认设置竟然是脉冲拨号。在音频拨号和脉冲拨号之间切换还不是通过硬拨动一个小开关,而是通过输入一组键来实现切换。正因为如此才一直保留着那本说明书。切换到音频需要提前电话,并连续输入-> * 3 ->。
2009-10-16
学习BC480课程
- PDF是web上表单的事实上的标准
- Adobe的产品LiveCycle Designer使得设计表单更为轻松和灵活
- SAP NetWeaber Development Studio和 ABAP Workbechn都集成了LiveCycle Desinger
- 多种格式的图像文件无需转换可直接插入到表单中
- 可以旋转对象(包括文本)
- 可以在同一个表单中的不同页面中使用不同的orientation(landscape or portrait)
- Forms can be created so that they conform to accessibility standards
- Complex layout elements can be shared between form developers
- Existing PDF or Word documents can be imported
- TrueType Fonts can be used; installation requires no upload
- Barcodes can be printed on all printers of types Postscript, PCL, PDF, or Zebra
- Mailing and faxing is easier
- Forms are regular Repository objects with standard transport and versioning
- Interactive scenarios and integration into browser-based applications are possible (Web Dynpro for Java or ABAP)
2009-10-09
Adobe提供的几个常用网页
Adobe各种产品的在线文档。打开这个页面后选择想查看的产品,然后会转到http://livedocs.adobe.com/域名下。如选择livecycle后,页面会跳转到 http://livedocs.adobe.com/livecycle/8.2/wb_designer/wwhelp/wwhimpl/js/html/wwhelp.htm 。因为Livecycle designer的帮助文件在不是当前窗口也显示在前,因此查看在线的会更方便些。
2. http://cookbooks.adobe.com/
这个网页与Oreilly合作,用于分享和查找与Adobe产品相关的代码,现在最活跃的是与Flex相关的板块。
3. http://learn.adobe.com/
这是一个wiki站点,让大家共同来创作帮助初学者学习Adobe的产品。
2009-09-30
SAP关于表单的课程
- BC 480:PDF-Based Print Forms
- BC 470:Form Printing with SAP Smart Forms
- BC 460:SAP-Script Form Printing and Text Management
2009-09-29
用电力线路传输数据
今天在ibood.de网上买了一个使用电力线路传输音频数据的转换器,名为dLAN Audio extender Starter Kit,39.95加上UPS运费5.95。这样以后就可以把楼上的电脑和楼下的Bose音箱连接起来。试用了一下,安装很简单,不过有时候数据传输不稳定,音乐会出现短暂的中断。目前还不知道是什么原因导致的短暂传输中断。
2009-09-28
孔夫子的生日
2009-08-18
2009-08-14
google picasaweb vs. microsoft photogallery
一个朋友结婚拍了些照片放在了google的picasaweb下,通过她的hotmail邮箱发了个链接给大家分享。没想到的是链接的href属性没修改成了:href="http://www.microsoft.com/china/windows/windowslive/products/photo-gallery-edit.aspx"
不知道这个可笑的替换是在撰写邮件时被替换的,还是在邮件服务器上被替换的。很想知道用gmail账户发出带microsoft photo-gallery会不会被替换成picasaweb的页面。这样不光彩的行为对稍有计算机常识的人不是问题,可是对于年老的父母亲一定会带来困扰。谁叫她使用的是hotmail的免费服务呢,没准那个角落的条款就容许Microsoft这么干。如果是hotmail的付费用户,兴许Microsoft不会采取这样拙劣的办法。
2009-07-15
LiveCycle Designer中事件顺序
f为表单名称,p为第一页页面名称,txtField是一个text field的名称。
f.p.txtField::initialize
f::initialize
f.p.txtField::validate
f::validate
f.p.txtField::ready:form
f::ready:form
f.p.txtField::docReady
f::docReady
2009-07-14
解决无法访问dashboard的错误
You do not have sufficient permissions to access this page.
网上有不少类似错误,但很少有仅仅出现在dashboard页面上。后来突然想到有可能是plugin不兼容导致的错误,发现曾经安装过一个名为Admin Drop Down Menu的插件。这个正好与管理界面内的菜单相关,禁用后立即可以访问dashboard页面了。
2009-07-13
2009-07-12
转换mysqldump文件编码
以前就为mysqldump导出的文件编码折腾过,这一次没费那么大的劲。因为blog的备份是以前从系里mysql服务器dump出来的,并且系里的mysql服务器版本比较低是4.0 (-- Server version 4.0.24_Debian-10sarge2-lo),导出文件的默认编码不是utf8。使用iconv转换总失败,只好用来方法,用notepad++打开sql文件,然后选择format -> convert to utf8,保存为utf8编码的文件。中间notepad++假死很长时间,耐心等待之后才成功保存。这样把utf8编码的sql文件上传到新的mysql服务器(版本为v5.0.81)后,中文和变音才正常显示。
2009-07-04
无法启动windows上的cygwin sshd
/var/empty must be owned by root and not group or world-writable.
执行/usr/sbin/sshd -D -d -d -d得到更详尽的信息:
$ /usr/sbin/sshd -D -d -d -d
debug2: load_server_config: filename /etc/sshd_config
debug2: load_server_config: done config len = 196
debug2: parse_server_config: config /etc/sshd_config len 196
debug3: /etc/sshd_config:13 setting Port 22
debug3: /etc/sshd_config:38 setting StrictModes no
debug3: /etc/sshd_config:92 setting UsePrivilegeSeparation yes
debug3: /etc/sshd_config:106 setting Subsystem sftp /usr/sbin/sftp-server
debug1: sshd version OpenSSH_5.1p1
debug1: private host key: #0 type 0 RSA1
debug3: Not a RSA1 key file /etc/ssh_host_rsa_key.
debug1: read PEM private key done: type RSA
debug1: private host key: #1 type 1 RSA
debug3: Not a RSA1 key file /etc/ssh_host_dsa_key.
debug1: read PEM private key done: type DSA
debug1: private host key: #2 type 2 DSA
/var/empty must be owned by root and not group or world-writable.
记得以前的版本中var目录在cygwin的安装目录下,现在var目录被自动创建到了C:\var下。
试着在var下创建了empty目录并修改其权限,仍然不能启动。最后重新启动cygwin安装程序,在Install for选项中选择for all,在组件中选择reinstall cygwin,cygrunserv, openssh,安装完毕后马上就可以启动ssh服务了!
Update: 在台式机上遇到同样的问题,这次与在笔记本上不同。不能启动windows里的服务,但却能够在命令行下启动sshd,并且能登陆。采用上面的办法重装后仍然不见效果。重新运行ssh-host-config后sshd.log仍然出现
/var/empty must be owned by root and not group or world-writable.
执行:$ chown SYSTEM empty
jia@swhtw78190 /cygdrive/e/cygwin/var
$ ls -al empty/
total 0
drwxr-xr-x+ 2 SYSTEM Benutzer 0 Jul 7 12:36 .
drwxrwxrwx+ 8 jia Benutzer 0 Jul 7 12:36 ..
jia@swhtw78190 /cygdrive/e/cygwin/var
$ net start sshd
CYGWIN sshd wird gestartet.
CYGWIN sshd wurde erfolgreich gestartet.
估计是ssh-host-config程序没有正确设置/var/empty目录的owner。
2009-06-17
Live Cycle Designer下text object和text field object的区别
当把表单中的数据导出成XML文件时,text object的数据不会出现在XML文件中,而text field object的数据会出现在XML文件中。
可以设置tab order忽略text object,但不能跳过text field object,尽管它的属性设置为invisible或hidden。
2009-06-16
清除radionbutton group的选择状态
通过脚本来清除radiobutton group 的选择状态不能通过设置其值为null,而必须设置其值为空,如
F.P.radioButtonGroup.rawValue = ""; 而不是F.P.radioButtonGroup.rawValue = null;
javascript中的比较
如果把一个string和一个number相比较,javascript会自动试着将string转换为number,所以 "1.010" == 1.01 表达式返回true。
空和空格会被转换为数字0,所以不管是"" == 0,还是" " == 0 都会返回true。
这也与使用的比较操作符 == 有关。更严格的比较使用 ===,参看javascript reference
2009-06-14
2009-06-10
删除一对XML标签内的文字2
我的尝试:
:%s/\(<script \a*="\a*\/x-javascript">\)\([^<]*\)\(<\/script>\)/\1\3/
或者
:%s#\(<script contentType="application/x-javascript">\)[^<]*\(</script>\)#\1\2#
用sed来处理:
sed -rn 's#(<script contentType="application/x-javascript">)[^<]*(</script>)#\1\2#g;p' myfile.xdp
如果脚本有多行,需要处理换行的情况:
%s#\(<script contentType="application/x-javascript">\)\([^<]*\n\)*[^<]*\(</script>\)#\1\3#g
或者用awk来处理换行的情况:
awk -v RS="<script contentType=\"application/x-javascript\">" 'NR!=1{gsub("^[^<]*</script>","</script>")}{printf NR==1?$0:RS""$0}' myfile.xdp
Update: (2009-06-24 )
要干净删除已有的脚本代码,仅仅删除<script>标签内的代码还不够。这样会留下很多空的不包含脚本的event标签,当再次添加脚本文件时,如果新生成的event标签连同script标签在原来那个标签之后,那么代码将不会在design view下显示出来,而只在XML source中显示出来,在执行时,代码仍会被执行。也就是说,一个不包含任何代码代码的form的xml source里面应该有不会有event标签出现。
2009-06-03
xdp文件变大问题
网上google的结果是,这是Livecycle Designer ES 8.2的一个Bug造成的。
A bug introduced with LiveCycle Designer ES Update 1 (8.2) is now fixed in LiveCycle service pack 2 and the Acrobat 9.1 update. The bug causes a processing instruction ex. <?templateDesigner StyleID aped3?> to get copied repeatedly while working with the form. This can lead to extremely large file sizes and sometime causes crashes. The fix removes duplicate StyleID's found in existing forms and prevents them from being created.
http://blogs.adobe.com/livecycle/2009/03/post.html
2009-05-31
删除一对xml标签内的文字
<script contentType="application/x-javascript">$.rawValue = ValidateScriptObject.fmtDate(ValidateScriptObject.getPeriod(),1);</script>
LiveCycle Designer不提供一次性删除所有的javascript代码,只好自己动手。在vim下先查找x-javascript,然后执行 cit 来删除标签内的文字,然后击键 n . ,这样下去似乎很快捷,不过后来发现当标签内文字不为空时,命令执行的很好,当这是一对空标签时,cit 命令会删除开始标签,导致XML文件不再well formed,后来在bbs.chinaunix.com一问才知道,这是gvim 7.1的一个bug,7.2修正了这个问题。
2009-05-30
解决无法写入_viminfo文件错误
最近在笔记本上的windows xp上使用gvim时,总是提示无法写入D:\Documents and Settings\dingjun.jia\_viminfo文件。开始以为是文件权限被错误设置。在检查目录Documents and Settings的权限设置时,发现这个文件夹的readonly被阴影选中了,取消保存后该选项仍然显示被选中,不过这个目录确实可写,估计只有微软自己的程序员才知道为什么要把这个文件夹设置为readonly,并且这个设置还不起作用,总之走了一段弯路。网上有人写道有可能是viminfo有太多的临时文件,vim无法知道该把哪个临时文件写入_viminfo中,所以写入失败。查找了一下并没有发现viminfo的临时文件,viminfo的帮助(:help viminfo)说,Unix或OS/2下该文件位于$HOME/.viminfo下,在Windows下位于$HOME\_viminfo。如果windows下没有定义HOME变量,文件被保存到$VIM\_viminfo,如果VIM也没有被定义,就位于c:\_viminfo。可是我使用gvim 7.2总是试图在目录下D:\Documents and Settings\dingjun.jia\下写该文件。定义了VIM变量,问题依旧,在定义HOME变量后,提示消失了。是不是Vim的Help应该更新了?
2009-05-26
在LiveCycle Designer下调试javascript
Using the JavaScript Console from Acrobat, you can to evaluate single or multiple lines of code.
There are three ways to evaluate JavaScript code while using the interactive JavaScript Console:
• To evaluate a portion of a line of code, highlight the portion in the console window and press either Enter on the numeric keypad or Ctrl+Enter on the regular keyboard.
• To evaluate a single line of code, make sure the cursor is positioned in the appropriate line in the console window and press either Enter on the numeric keypad or Ctrl+Enter on the regular keyboard.
• To evaluate multiple lines of code, highlight those lines in the console window and press either Enter on the numeric keypad or Ctrl+Enter on the regular keyboard.
2009-05-20
初识Adobe LiveCycle Designer
用了之后很失望,与其他编程的IDE相差甚远,与之搭配使用的Acrobat Pro9下的debugger窗口也很蠢,鼠标点到Acrobat窗口后,debugger窗口仍然在当前窗口,只有笔记本没有第二个显示器简直是一场恶梦。更惨的是一个form有错之后,必须关掉Acrobat,重新启动,否则Acrobat不能正确解释form内的JavaScript代码!!不知道Adobe什么时候能在这个产品上多花点功夫。
2009-05-14
在Excel下用方向键在单元格间移动光标
今天在使用Excel时,发现使用上下左右方向键(KEYDOWN、KEYUP、KEYLEFT和KEYRIGHT)进行单元格的切换时,发现方向键控制的不是单元格的切换,而是整个Excel工作表的滚动条的移动,而当前焦点的单元格并没有随方向键而改变。解决办法是按下Scroll Lock键。
2009-05-06
自定义另存为对话框中的快捷访问位置
run gpedit.msc
open User Configuration – Administrative Templates – Windows Components – Windows Explorer – Common Open File Dialog - Items displayed in Places Bar
choose enable and add folder to Place to display
2009-04-17
IT职业规划
http://www.microsoft.com/china/technet/webcasts/class/career.mspx
2009-04-07
下载IGO 8.3.2.71348
http://rapidshare.com/files/175240934/i83264go.part01.rar
文件一共有20个,一个个去copy link location太麻烦了。于是选中了所有的链接,在Firefox先选中selection source,再把html source复制到一个文本文件里,再用grep过滤一下就行了
grep -s -o -E http:\/\/rapidshare\.com\/files\/[0123456789]{9}\/i83264go\.part[0123456789]{2}.rar igo8.txt
安装RSD和RouterControl程序。在RSD程序中Einstellung -> Methode 下给出RouterControl程序的正确路径,并填写参数/MULTI /d /c /q。把上面grep得到的结果复制到RSD中,启动下载。
Enjoy it!
2009-04-03
HP打印机端口
gk公司内IP地址是通过DHCP分配的,并且楼内因为有多家公司办公,共同使用网络设施。gk的电脑上安装的打印机使用的就是standard TCP/IP port。她的办公地点挪动到另一间屋子时,能上网,但不能打印了。一看分配到的IP地址,不再是以前的C类地址 192.168,而是一个A类地址10.0,而打印机得到仍然是C类地址。打完一圈电话后才知道楼里有两个DHCP server。机器启动时,哪个DHCP server响应快,机器就得到一个相应的A类或C类地址。可是她的同事的电脑也获得了一个A类地址,却仍然可以打印。区别就在于她的同事电脑上安装的打印机使用的是HP打印机标准端口,其中有一个选项是: 当IP地址改变时也打印到这个设备上。我猜测是直接使用打印机的MAC地址与打印机的网络模块通信,而不再需要IP地址解析,所以能把要打印的数据发过去。
2009-03-23
PI Bootcamp
Course Objectives :
- Understand the technology and developer basics of SAP NW PI
- Understand the technical architecture of each SAP NW PI component
- Implement SAP NW PI business scenarios
This course will cover:
- PI Overview
- System Landscape Directory (SLD)
- Integration Repository (IR) – Design
- Integration Directory (ID) – Configuration
- Mapping Techniques
- Runtime Workbench (RWB)
- Adapter Framework (AF)
- Business Process Management (BPM)
- Monitoring and Administration
- Installation and Technical Architecture Considerations
2009-02-13
音频光纤接口
2009-02-10
shell脚本中的行尾空格引起的错误
如果执行脚本时出现syntax错误,如 line 9: syntax error: unexpected end of file 并且提示出错的行比脚本中最后一行的数字还大时,检查脚本中的行尾是否有空格,删除行尾空格就应该能解决这类错误。在vim中使用 :% s/\s*$//即可删除行尾的空白字符,包括<Space> 和 <Tab>。
2008-12-10
standby之后出现蓝屏
最近笔记本不时出现蓝屏,都是发生在笔记本空闲一段时间进入standby之后。摁电源键之后红色的desktop还能闪一下,紧接着就是蓝屏:
page_fault_in_nopaged_area
technical information: 0x00000050 (0xF7A62000, 0x00000001, 0X804DADE8, 0x00000000)
或是:
technical information: 0x00000050 (0xF7A62CB000, 0x00000001, 0X804DADE8, 0x00000000)
以0x00000050为关键字在微软的知识库查,发现这个错误有可能是USB的驱动,刻录程序,病毒或木马引起的。赶紧查一下毒再说吧。
2008-11-25
用Vsubst加载一个目录为虚拟盘
2008-11-18
邮件在Outlook发件箱里不能被发送
2008-11-16
卸载Windows Live Messenger 2009 beta
一位朋友新买了一台电脑,自己安装了windows live messenger 2009 beta版本。可是安装完成后根本不能登陆,错误代码为8000ffff。网上查询的结果显示有不少人都有同样的错误,都是建议卸载后安装一个低一点的正式版本。下载完8.5版本后无法进行安装,因为检测到有更新的版本存在。于是去卸载windows live messenger 2009 beta。可是Windows控制面板里的添加卸载程序里根本就没有列出它,无法卸载。在程序安装的文件夹内也找不到卸载程序。执行用Windows Installer CleanUp Utility 1.0后,beta版本的messenger仍然纹丝不动。google的结果中有个方法是执行:
msiexec /x {B1403D7D-C725-4858-AACC-7E5FA2D72859}
可是这个方法在这位朋友的机器上却不见效,说对当前安装的程序无效。想到贴出这个方法的都是使用英文的用户,而我这位朋友安装的是中文版本。也许是英文与中文版本的ID不一样。于是上注册表一看,果然windows live messenger下的ID是另一个值。把上面的ID值更换之后,卸载界面终于出来了。问题就算解决了,可是为什么不能让beta版本的卸载更容易些呢?
2008-11-13
延迟发送邮件
解决办法是在exchange+outlook环境下使用延迟发送邮件功能。撰写好邮件之后,在邮件选项里可以指定在特定时间之前不发送。这样即使在本地Outlook发送完邮件之后,exchange服务器在指定的时间之前也不会投递邮件到邮件接收者。
参考:
http://office.microsoft.com/en-us/outlook/HP052427901033.aspx?pid=CH063565631033
2008-11-12
收回已发送的邮件
http://office.microsoft.com/de-de/outlook/HA010917601031.aspx
2008-11-07
update Nav N Go iGO to v8.3.1.57021
把文件拷贝到SD卡后,启动程序总报错说:
program application database cannot be found. Please insert the original card.
网上提示修改sys.txt文件中app的路径,比如把SDCARD改成本地化版本WM中SD卡的名字:
[folders]
app="%SDCARD%/iGO8"
[interface]
maxzoom2d=6000000
show_exit=1
[map]
2dheadup=1
试着修改为Speicherkarte,仍然不行。不过发现在启动程序后在Mein Windows Mobile-basiertes Gerät下面会有一个以app的值为名称的文件夹,不过里面都是空的。也就是说程序去那儿查找content文件夹的内容却找不到,所以报错。后来干脆删掉指定folders的两行,问题就解决了。因为sys.txt,iGo8.exe和content等文件夹在同一个目录下,查找是从当前目录开始,于是就找到了。
2008-11-03
Sending artes with Outlook 2007 failed
今天要重发一遍上个月月底的time reporting,结果发送不出去,因为周末把Outlook更新到了2007。可气的是Artes的出错提示,明明我点击的是发送,它却总是告诉我,我点击了cancel,取消了发送过程。这样的提示如何帮助用户去解决问题。后来找到的解决办法:
-
Close Artes & Outlook 2007.
-
Install the Microsoft patch by clicking here.
NOTE: You can also install the patch Collaboration Data Objects, version 1.2.1 from this link: http://www.microsoft.com/downloads/details.aspx?familyid=2714320d-c997-4de1-986f-24f081725d36&displaylang=en -
Start Artes & Outlook 2007.
-
Send your Time Report.
2008-10-28
print files in landscape orientation
Fertigstellung -> Ausrichtung -> 选择 Querformat
2008-10-27
Font Substitution with Acrobat
Font substitution in PDF will occur when the computer does not have access to the original font. If the original font is not present, an Adobe Multiple Master typeface is temporarily substituted for missing fonts— AdobeSerifMM for a serif fonts, and AdobeSansMM for sans serif fonts.
Documents submitted to technical review by the agency may contain formulas and other scientific characters. To prevent the possibility of a character being incorrectly substituted, documents must have fonts embedded.
Modern font sets often contain thousands of characters. Completely embedding a font greatly increases the file size of the resulting PDF. The solution is font subsetting. Subsetting only embeds the characters that are necessary to render the page. Visually, a document with subset fonts and completely embedded fonts looks and prints identically.
2008-09-07
购买Office 2007记
从周一开始就在K给Jump Starter做Training。今天结束的早赶上了17:11的S-Bahn,并在S-Bahn上和去年参与招人工作并主持AC的MM和Stefan(后来才知道是位senior manager)和聊了起来。快到Hbf时,GK打电话说,她公司的电脑上的Office 2007试用版已经不能用了,老板让她自己去买一套Office 2007,于是求助于我,让我去Hauptwache帮她买一套。早就跟她说过Open Office完全可以作为替代品,不过对此似乎是很不感冒。我也懒得再费口舌坐车直奔Hauptwache的Saturn了。这应该算是法兰克福最热闹的地段的一个大型电器商场了,不想货架上唯一找到的微软的Office产品除了一份单独出售的Outlook 2007外就只有Office 2007 standard的一个upgrade版本,价格为349欧元。也就是说购买者在自己的电脑上必须已经安装了一份有许可证的Office组件(Word,Excel和Powerpoint)才能使用这个Upgrade版本。看到如此情形,不禁怀疑微软是不是根本就没有打算把Office 2007卖给个人消费者,所以它才在法兰克福这样一个国际性大都市最繁华地段的大型电器商场不见踪影。一番电话之后,打消了那位还想购买Office 2007许可证的想法。Citibank这样的客户到现在还在用Office 2000,不禁好奇这Office 2007都卖给了什么样的企业用户。
2008-08-28
针对IE的CSS
用CSS来布局页面,IE的不同版本对CSS的支持不一样,因此必须针对不同的版本应用一些CSS hack。IE 5和以上版本提供一种特殊的注释,IE 会去解释它,而其他的浏览器把它视作注释,不用理睬。
想针对版本低于和等于IE 6的应用CSS,可以使用:
<!--[if lte IE 6]>
<link rel="stylesheet" type="text/css" href="css/IE6hacks.css" />
<![endif]-->
只针对IE 7的CSS:
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="css/IE7hacks.css" />
<![endif]-->
针对IE 5和以上版本:
<!--[if IE ]><link rel="stylesheet" type="text/css" href="css/IEhacks.css" />
<![endif]-->
使用Google Calendar Sync
为了把Outlook的日历与Google的日历同步,找到了Google提供的Google Calendar Sync。填写好Gmail的账户和同步频率后就可以完成同步。这个小软件提供三种同步选择,google 日历 -> outlook 日历,outlook 日历 -> google 日历和google 日历 <--> outlook 日历。如果能把它作为一个Outlook的addon应该会更加方便。
Vista下改变分区
周六一个朋友新买一个电脑(Vista系统),让我帮忙创建分区。我以为还可以用旧的PM搞定,用Windows PE光盘启动后,不知道是硬盘太新,还是Vista的原因,连硬盘都没有识别出来,只好作罢。后来在网上一查,原来Vista已经自带了调整和创建分区的工具。
Windows Vista includes a built-in functionality in Disk Management to shrink and expand partitions. No more 3rd party utilities needed!
2008-07-06
邮件没有到达某些或全部的预定收件人
为GK在Outlook下配置了1und1的邮箱,使用IMAP协议,收发邮件都没有问题,可是每发送一封邮件时总会在本地的收件箱里收到一封由“系统管理员”发送的主题为“未传递:邮件主题”的邮件。邮件内容为:
邮件没有到达某些或全部的预定收件人。
主题: foobar
发送时间: 6.7.2008 20:58
无法到达以下收件人:
'foobar@hotmail.com',时间为 6.7.2008 20:58
550 must be authenticated
Google了一下原来是因为在在设置账户时没有选中选项:
我的邮件发送服务器(SMTP)要求验证
