| ²©¿Í | Linux | ÂÛ̳ | È˲Š| Åàѵ | ֪ʶ¿â | ×ÊÁÏ | ¶ÁÊé | ÊÖ²á | ¾«»ª | ÏÂÔØ | ɳÁú | ËÑË÷ | |
![]() |
| Ê×Ò³ ¡¬ ÐÂÎÅ ¡¬ ASE ¡¬ PB/PD ¡¬ Sybase IQ ¡¬ iAnywhere ¡¬ RS ¡¬ ÂÛ̳ ¡¬ ר¼Ò·Ã̸ ¡¬ ÏÂÔØ ¡¬ SDN×¨Çø |
|
ChinaUnix -> SYBASE¼¼Êõ -> ¼¼ÊõÎÄÕ ->PB/PD -> ÕýÎÄ
ÉîÈëÁ˽âPowerBuilderµÄÊý¾Ý´°¿Ú
¡¡¡¡PowerBuilder(ÒÔϼò³ÆPB)ÊÇPowersoft¹«Ë¾(Òѱ»SybaseÊÕ¹º)ÍÆ³öµÄ»ùÓÚ¿Í»§»ú/·þÎñÆ÷Ìåϵ½á¹¹µÄÇ¿ÓÐÁ¦µÄ¿ª·¢¹¤¾ß,×ÔÎÊÊÀÒÔÀ´ÉîÊÜ¿ª·¢ÈËÔ±µÄºÃÆÀ¡£ DatawindowÊÇPBÖлñȡרÀû¼¼ÊõµÄ¿Ø¼þ,Ëü¶ÔÊý¾ÝµÄ´¦Àí·½·¨Ï൱¼ò½à,Êý¾Ý´°¿ÚÄÜ´¦Àí¸÷ÖÖÏÔʾ¸ñʽ¡¢½øÐб¨±í´òÓ¡,¶Ô¸´ÔÓµÄǶÌ×±¨±íͬÑù´¦Àí×ÔÈç¡£ ¡¡¡¡Êý¾Ý´°¿ÚµÄ´¦Àí»úÖÆÊ×ÏÈÊǸù¾ÝËùÐèµÄÏÔʾ·½Ê½½«Êý¾ÝÔ´±íÖеÄÓòÉè¼ÆºÃ,ÔÚÔËÐÐʱ½«ËùÒªµÄÊý¾Ý´ÓÊý¾Ý¿â·þÎñÆ÷ÉÏÏÂÔØµ½¿Í»§»úÉÏ´¦Àí,È»ºó½«¸ü¸ÄºóµÄÊý¾Ý½øÐÐÌá½»(Commit)»ò»Ø¹ö(Rollback)¡£ÕâÖÖ´¦Àí»úÖÆ´ó´ó½µµÍÁËÊý¾ÝµÄ´«ÊäÁ¿,¼õÇáÁËÍøÂçµÄ¸ºµ£,Ò²Ìá¸ßÁËÊý¾ÝµÄ´¦ÀíËÙ¶È¡£³ä·ÖÀûÓÃÊý¾Ý´°¿ÚµÄÌØµã,¿É´ïµ½Ê°빦±¶µÄЧ¹û,µ«ÊÇÈç¹ûÓÐЩÎÊÌâ²»¼Ó×¢Òâ¾Í»á³öÏÖÒâÏë²»µ½µÄ´íÎó¡£ ¡¡¡¡¼¸¸öº¯Êý ¡¡¡¡1. AcceptText() ¡¡¡¡AcceptText()º¯ÊýµÄ¹¦ÄÜÊǽ«Êý¾Ý´°¿Úµ±Ç°±à¼µÄÊý¾Ý×ªÒÆµ½Êý¾Ý´°¿ÚµÄ»º³åÇøÖС£³ÌÐòͨ³£Ôڹرմ°¿Ú¼°ÆäËûÇé¿öÏÂÅжÏÊÇ·ñ¸Ä±äÁ˵±Ç°Êý¾Ý¡£Èç¹ûÒѸıäÊý¾Ý,Ó¦ÌáʾÓû§±£´æ¡£Õâ¾Í¶Å¾øÁËÓû§ÔÚżȻµÄÇé¿ö϶ªÊ§¸ü¸ÄÊý¾ÝµÄÏÖÏó¡£Ò»°ãÓÃModifiedCountºÍDeletedCountº¯ÊýÅжÏÊý¾ÝÊÇ·ñ¸Ä±ä¡£ ¡¡¡¡PBÔÚ´¦ÀíÊý¾Ý´°¿Úʱ,¶ÔÓ¦¿ª±ÙÁËËĸöÊý¾Ý»º³åÇø,·Ö±ðΪPrimary Buffer¡¢Deleted Buffer¡¢Filter Buffer¡¢SortBuffer,ÆäÖÐDeleted Buffer´æ·Å±»É¾³ýµÄ¼Ç¼,Filter Buffer´æ·Å±»¹ýÂ˵ļǼ,Sort Buffer´æ·ÅÅÅÐòµÄ¼Ç¼,Primary Buffer´æ·ÅÆäËû¼Ç¼¡£º¯ÊýModifiedCount´ÓPrimary and Filter BuffersÖÐÈ¡Êý¾Ý½øÐÐÅжÏ,DeletedCountÔò´ÓDeleted BufferÖÐÈ¡Êý¾Ý½øÐÐÅжϡ£ ¡¡¡¡PBÔÚ½ÓÊÜÓû§ÊäÈëʱÉèÖÃÁËÒ»¸ö¸¡¶¯±à¼¿ò,Óû§ÊäÈë»ò¸ü¸ÄµÄÄÚÈݲ¢²»Ö±½Ó½øÈëPrimary Buffer,¶øÊÇÔÚÓû§ÊäÈëÍêºó½øÈëÏÂÒ»¸öÓòʱ,PBÊ×ÏȶÔËü½øÐÐÓÐЧÐÔ¼ì²â,ͨ¹ýºóתÈëPrimary Buffer¡£Èç¹ûÖ»¸Ä±äÒ»ÏîÊý¾Ý¾Í¹Ø±Õ´°¿ÚÔòÏà¹ØÊý¾Ý²¢Ã»ÓнøÈëPrimary Buffer,ϵͳÅжÏModifiedCount()Ϊ0,ËùÒÔ²»»áÌáʾ±£´æÊý¾Ý¡£ÓÃAcceptText()º¯Êý¾Í¿ÉÒÔ½«¸¡¶¯±à¼¿òÖеÄÊý¾ÝתÈ뻺³åÇøÖÐ,ÔÚÏàÓ¦µÄ³ÌÐò¶Îǰ¼ÓÉÏAccepttext(),ÎÊÌâ¾Í½â¾öÁË¡£ ¡¡¡¡2. FindRequired() ¡¡¡¡ÔÚʵ¼ÊÓ¦ÓÃÖо³£ÐèÒªÏÞÖÆ±íÖÐһЩÓòµÄÊôÐÔ,ÀýÈçÒøÐпͻ§±íÖÐÕ˺žͲ»ÄÜΪNull¡£ÔÚÌá½»Êý¾Ýǰ¼ì²éÊÇ·ñ½«±ØÐëÊäÈëµÄÊý¾Ý¶¼¸³ÖµÊÇÒ»¸öºÜºÃµÄ±à³Ìϰ¹ß¡£FindRequiredº¯Êý¿ÉÒÔ½â¾ö´ËÎÊÌâ,Ëüͨ¹ý¶ÔÊý¾Ý´°¿ÚÖÐÊý¾ÝµÄ¼ì²é,½«Êý¾Ý´°¿ÚÖÐÓòµÄÊôÐÔΪRequired,¶ø²¢Î´¸³ÖµµÄÓò(°üÀ¨ÏàÓ¦µÄÐС¢ÁÐ)ÕÒ³öÀ´¡£ ¡¡¡¡ÎªÁËÀûÓô˺¯Êý,ÔÚ¹¹ÔìÊý¾Ý´°¿Úʱ¾ÍҪעÒ⽫±íÖоßÓÐNOT NULLÊôÐÔµÄÊý¾ÝÁÐÉèΪRequired(·½·¨Îª:ÔÚÊý¾Ý´°¿ÚÏàÓ¦ÓòÉϰ´Êó±êÓÒ¼ü»òË«»÷×ó¼ü,µ¯³öColumn Object ¿ò,Ñ¡EditÒ³,½«RequiredǰµÄ¿òÑ¡ÖÐ,°´OkÅ¥¼´¿É)¡£ÔÚÏàӦʼþÖвåÈëÏÂÁгÌÐò: ¡¡¡¡long¡¡ror=1 //ÐÐÊý¸³1 ¡¡¡¡integer¡¡colnbr=0 //ÁÐÊý¸³0 ¡¡¡¡stringcolname //ÓÃÀ´´æ´¢ÁÐÃû ¡¡¡¡mle_required.Text = "" //´°¿ÚÖеĶàÐб༿ؼþ,ÓÃÀ´´æ´¢ÕÒµ½ÓòµÄÐС¢ÁкŠ¡¡¡¡DO WHILE row <> 0 ¡¡¡¡colnbr++ //¼ÌÐøÕÒÏÂÒ»ÁÐ ¡¡¡¡IF dw_1.FindRequired(Primary!,row, colnbr,colname, FALSE) < 0 THEN EXIT ¡¡¡¡//Èô³ÌÐò³ö´íÔò·µ»Ø ¡¡¡¡IF row <> 0 THEN ¡¡¡¡mle_required.Text = mle_required.Text + String(row) + "¡«t" &+ colname + "¡«r¡«n" //±£´æ²é³öµÄÐС¢ÁкŠ¡¡¡¡END IF ¡¡¡¡//µ±ROW·µ»ØÎª 0 ÔòÒâζÔÙûÓвé³ö,Ìø³öÑ»· ¡¡¡¡LOOP ¡¡¡¡³ÌÐòÖ´ÐÐÍêºó,¶àÐб༿òÖÐÏÔʾµÄΪ³ö´íµÄµØ·½,Óû§¸ù¾ÝÌáʾ¿ÉÒÔÇáÒ׵ظü¸Ä¡£ ¡¡¡¡FindRequiredº¯ÊýÖеÄRow¡¢Colnbr²ÎÊýÄÜ×Ô¶¯Ôö¼Ó»òÖØÖÃ,ColnameÓÃÀ´´æ·ÅÁеÄ×Ö·ûÃû¡£ ¡¡¡¡Êý¾ÝµÄÍ»³öÏÔʾ¼°±£»¤:³ÌÐòÔËÐÐÖÐ,Óû§Ï£ÍûÏÔʾµÄÊý¾Ý¾ßÓÐÃ÷ÏÔµÄÇø·Ö,ÀýÈçѧÉúµÄ³É¼¨(²»¼°¸ñµÄ·ÖÊýÒªÓúìÉ«ÏÔʾ),ÓÐЩÊý ¡¡¡¡¾Ý±ØÐëÖ»ÄÜÏÔʾ,²»ÄÜÈÃÓû§ÐÞ¸Ä;»¹ÓÐЩÊý¾ÝÔÚÓÐЩʱºò¿ÉÒÔÐÞ¸Ä,ÓÐЩʱºò²»ÄÜÐ޸ĵȡ£ÒÔÉÏÇé¿ö¿É¹é½áΪÁ½µã: ¡¡¡¡3. Êý¾ÝµÄÍ»³öÏÔʾ ¡¡¡¡Êý¾Ý´°¿ÚÓ¦¸ÃÄÜʹÓû§ºÜ¿ìÕÒµ½ËûÃÇÏëÒªµÄÐÅÏ¢,ÒÔÑÕÉ«Çø·Ö¼ÈÂú×ãÓû§µÄϰ¹ß,ÓÖ²»Õ¼ÏµÍ³×ÊÔ´,ʵÏÖÆðÀ´Ò²ºÜ¼òµ¥¡£ÒÔѧÉú¹ÜÀíΪÀý,ÒªÇó³É¼¨µÍÓÚ60·ÖµÄÒÔºìÉ«ÏÔʾ,ÆäËû²»±ä¡£·½·¨ÊÇ:ÔÚÊý¾Ý´°¿ÚÖжÔÓ¦³É¼¨µÄÁÐ(ÀýÈç¡®/CJ¡¯)ÉÏË«»÷Êó±ê×ó¼ü»òµ¥»÷Êó±êÓÒ¼ü,µ¯³öColumn Object¶Ô»°¿ò,ѡȡExpressionsÒ³,ÔÚColorºóµÄ¿òÖÐÊäÈë: ¡¡¡¡if(cj<60,rgb(255,0,0),rgb(192,192,192))´Ë¾ä±íʾµ±³É¼¨Ð¡ÓÚ60ÔòÏÔºìÉ«,·ñÔò»ÒÉ«ÏÔʾ¡£ ¡¡¡¡IFÓï¾äÖ»¿ÉÄÜÓÐÁ½ÖÖÑ¡Ôñ,Èç¹ûÒª¸ü¶àµÄÌõ¼þÅжÏÔò±ØÐëÓÃCASEÓï¾ä,ÀýÈç³É¼¨´óÓÚµÈÓÚ90ÓÃÀ¶É«,СÓÚ60ÓúìÉ«,ÆäËûÓÃÂÌÉ«ÔòÓ¦¸ÃÓÃÒÔÏÂÓï¾ä: ¡¡¡¡Case(cj¡¡WHEN IS >=90 THEN RGB(0,0,255) WHEN IS < 60 THEN RGB(255,0,0) E ¡¡¡¡LSE RGB(0,255,0))¡£ ¡¡¡¡ÎÒÃÇ»¹¿ÉÒÔÊäÈë¸ü¼Ó¸´ÔӵĹ«Ê½¡£ ¡¡¡¡Í¼ÐÎÊÇ×îºÃµÄ˵Ã÷ÓïÑÔ,ΪÁ˸üºÃÌåÏÖÊý¾ÝµÄÖ±¹ÛÐÔ,¿ÉÒÔ²ÉÓÃÌõ¼þλͼµÄ·½·¨¡£Ö®ËùÒÔ³ÆÎªÌõ¼þλͼ,ÊÇÒòΪËüËæÊý¾ÝµÄÐÔÖʶø¾ö¶¨ÊÇ·ñÏÔʾ,ÓÿÉÒÔÔÚÉÏÊöµÄ³É¼¨¹ÜÀíÊý¾Ý´°¿ÚµÄÇ°Ãæ¼ÓÉÏÒ»¸öͼƬ.Ë«»÷λͼ,µ¯³öPicture Object¶Ô»°¿ò,Ñ¡ExpressionsÒ³,ÔÚVisibleÓҵı༿òдÈëif(xb=¡®0¡¯,1,0),´Ë¾äµÄÒâÒåΪµ±ÐÔ±ðΪ0(Å®)ʱºûµû³öÏÖ,·ñÔòºûµûÏûʧ¡£³ÌÐòÔËÐÐÆðÀ´Ï൱ֱ¹Û¡£¶ÁÕß¿ÉÒÔ´¥ÀàÅÔͨ,³ä·ÖÀûÓÃÁеÄÊôÐÔʹÓû§µÄ½çÃæ¸ü¼ÓÓÑÉÆ¡¢Æ¯ÁÁ¡£ ¡¡¡¡4. Êý¾ÝµÄ±£»¤ ¡¡¡¡ÓкܶàÇé¿öÐèÒª¶ÔÊý¾Ý½øÐб£»¤(¼´Ö»ÄÜÏÔʾ¶ø²»ÔÊÐíÐÞ¸Ä),ѧÉú²éѯ³É¼¨Ê±¾ÍÊÇÕâÖÖÇé¿ö¡£½øÐÐÊý¾Ý±£»¤µÄ·½·¨Óкܶà,µÚÒ»ÖÖÊÇË«»÷Òª±£»¤µÄÁÐ,µ¯³ö Column Object,ѡȡEditÒ³,½«Display Only¿òÑ¡ÖÐ;µÚ¶þÖÖ½«Òª±£»¤µÄÁеÄTabOrderÖÃ0,Ôò´ËÁеò»µ½½¹µã,µ±È»¾ÍÎÞ´ÓÐÞ¸Ä;µÚÈýÖÖÊÇ´Ó¸ù±¾×÷Æð,ѡȡRows²Ëµ¥,ÔÙѡȡ Update Properties,µ¯³öSpecify Update Properties¶Ô»°¿ò,½«Allow UpdatesÉèΪ¿Õ,ÕâÑù¼´Ê¹Óû§¸ü¸ÄÁËÒ²ÎÞ·¨¸üÐÂÊý¾Ý¿â,ʹ¸ü¸ÄºÁÎÞÒâÒå¡£ ¡¡¡¡ÒÔÉÏÇé¿ö¶¼ÊÇÊÂÏÈÒѾȷ¶¨ÐèÒª±£»¤µÄÊý¾Ý¡£Èç¹ûÓÐЩÊý¾ÝÒª±£»¤,ÓÐЩ²»Òª±£»¤ÔòÒÔÉϵķ½·¨¾ÍÎÞ·¨ÊµÏÖ¡£ÀýÈçºĮ̈ͬÕ˹ÜÀí:¶ÔÓÚÒ»¸öûÓÐʵʩµÄºÏͬ¿ÉÒÔ¸ü¸Ä,¶ÔÓÚÒ»¸öÒѾʵʩµÄºÏͬÔò±ØÐë¼ÓÒÔ±£»¤¡£ÕâÐèÒªÓÃÁеı£»¤ÊôÐÔÀ´ÊµÏÖ,·½·¨ÈçÏÂ: ¡¡¡¡Ë«»÷ÿһÁÐ,µ¯³öColumn Object¶Ô»°¿ò,ѡȡExpressionsÒ³,ÔÚProtectºóµÄ¿òÖÐдÈë:if(sfss=¡®1¡¯,1,0),ÆäÖÐsfssΪ±íʾºÏͬÊÇ·ñʵʩ,Èç¹ûʵʩ(ֵΪ¡®1¡¯)Ôò½øÐÐÊý¾Ý±£»¤,·ñÔò¿ÉÒÔ¸ü¸Ä,´Ë·½·¨¿ÉÒÔÔÚ³ÌÐòÔËÐÐÖж¯Ì¬¿ØÖÆÊý¾ÝµÄ±£»¤·½Ê½¡£ ¡¡¡¡5.Êý¾Ý´°¿ÚµÄ¶à±í¸üР¡¡¡¡ÔÚ´¦ÀíÊý¾Ýʱ,¾³£ÐèÒª½«¼¸¸ö±íÖеÄÊý¾Ý·ÅÈëÒ»¸öÊý¾Ý´°¿ÚÖнøÐд¦Àí¡£Ò»°ãÇé¿ö϶à±íÊý¾ÝÔ´µÄÊý¾Ý´°¿ÚÖ»ÄÜÓÃÓÚÊý¾ÝµÄ¼ìË÷,¶ø²»ÄܸüС£ÏëÒª¸üÐÂÊý¾ÝÔò²ÉÓõķ½·¨Îª:´´½¨Êý¾Ý´°¿Ú(½«¸÷¸ö±íµÄÖ÷¼ü°üÀ¨½øÈ¥),ÐÞ¸ÄTaborderʹÊý¾ÝÄܱ»¸ü¸Ä,È»ºó¶ÔÓ¦¸÷¸ö±í´´½¨ÏàÓ¦µÄÒþº¬Êý¾Ý´°¿Ú,Òþº¬Êý¾Ý´°¿ÚµÄÊý¾ÝÏîºÍÖ÷Êý¾Ý´°¿ÚÖжÔÓ¦±íµÄÊý¾ÝÏîÓ¦ÍêȫһÖ¡£´æÅÌʱ½«Ö÷Êý¾Ý´°¿ÚÖеÄÊý¾Ý¿½±´µ½ÏàÓ¦µÄÒþº¬Êý¾Ý´°¿ÚÖÐÈ¥,Öð¸ö±£´æ¸÷Òþº¬Êý¾Ý´°¿ÚÖеÄÊý¾Ý¼´¿É¡£ÓÉ´Ë¿´À´,µÚ¶þÖÖ·½·¨¸üÈÝÒ×Àí½âºÍ½ÓÊÜ,ʵÏÖÆðÀ´Ò²ºÜ¼òµ¥¡£ ±¾Îı»ä¯ÀÀ´Î
|
| ¹ØÓÚÎÒÃÇ | ÁªÏµ·½Ê½ | ¹ã¸æºÏ×÷ | ³ÏƸӢ²Å | ÍøÕ¾µØÍ¼ | Ãâ·Ñ×¢²á |
Copyright © 2001-2007 ChinaUnix.net All Rights Reserved ¸ÐлËùÓйØÐĺÍÖ§³Ö¹ýChinaUnixµÄÅóÓÑÃÇ |