From 344ba18b080bb9c77215601d224a6f5e4f32efd7 Mon Sep 17 00:00:00 2001 From: david Date: Mon, 16 Jun 2008 16:43:21 +0000 Subject: [PATCH] =?UTF-8?q?Tienda=20web:=20=20-=20poder=20indicar=20indivi?= =?UTF-8?q?dualmente=20qu=C3=A9=20art=C3=ADculos=20est=C3=A1n=20en=20la=20?= =?UTF-8?q?tienda=20o=20no=20=20-=20arreglado=20el=20problema=20con=20?= =?UTF-8?q?=C3=B1=20y=20tildes=20al=20volcar=20informaci=C3=B3n=20a=20MySQ?= =?UTF-8?q?L.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@247 c93665c3-c93d-084d-9b98-7d5f4a9c3376 --- Database/FACTUGES.FDB | Bin 22106112 -> 22335488 bytes Source/Base/Base.res | Bin 4748 -> 384 bytes Source/Base/GUIBase/GUIBase.res | Bin 4748 -> 384 bytes Source/Cliente/FactuGES.res | Bin 172168 -> 171932 bytes .../Reports/uRptEtiquetasContactos_Server.pas | 1 - .../Contactos/Servidor/srvContactos_Impl.pas | 1 - .../Utiles/uActualizarArticulosUtils.pas | 100 +++++++-- .../Utiles/uActualizarClientesUtils.pas | 38 ++-- .../Utiles/uActualizarProveedoresUtils.pas | 10 +- .../Controller/uTiendaWebController.pas | 28 ++- .../Tienda web/Data/uDataModuleTiendaWeb.pas | 6 + .../Model/Data/uIDataModuleTiendaWeb.pas | 4 +- .../Model/uBizOscCustomerServer.pas | 14 +- .../Tienda web/Model/uBizOscProductServer.pas | 8 +- .../Tienda web/Plugin/uPluginTiendaWeb.dfm | 2 +- .../Tienda web/Plugin/uPluginTiendaWeb.pas | 4 +- .../Tienda web/Servidor/srvTiendaWeb_Impl.dfm | 22 +- .../Tienda web/Servidor/srvTiendaWeb_Impl.pas | 10 +- .../Tienda web/Views/uEditorTiendaWeb.dfm | 1 + .../Tienda web/Views/uEditorTiendaWeb.pas | 5 +- Source/Servicios/FactuGES.RODL | 6 + Source/Servicios/FactuGES_Intf.pas | 24 +++ Source/Servicios/FactuGES_Invk.pas | 17 ++ Source/Servicios/RODLFILE.res | Bin 27105 -> 27308 bytes Source/Servidor/FactuGES_Server.drc | 196 +++++++++--------- Source/Servidor/FactuGES_Server.rc | 2 +- Source/Servidor/FactuGES_Server.res | Bin 23344 -> 23336 bytes Source/Servidor/Utiles/uSchemaUtilsServer.pas | 2 - Source/Servidor/Utiles/uTiendaWebUtils.pas | 8 +- Source/Servidor/uAcercaDe.pas | 2 +- Source/Servidor/uDataModuleServer.dfm | 4 +- Source/Servidor/uDataModuleServer.pas | 2 +- Source/Servidor/uServerMainForm.pas | 2 +- 33 files changed, 327 insertions(+), 192 deletions(-) diff --git a/Database/FACTUGES.FDB b/Database/FACTUGES.FDB index 071f8868579e9fd4594b82faa0d2a3e9197cbb32..503bba7d053b2960bb909ccb1d5eba61433edb13 100644 GIT binary patch delta 257402 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
DAPi9Ic_pM_}6Z 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 z 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

UN z|8Gp?)!ndZ`9J0&uJ`*={nt(5<0VjN|4*(2!~=C)62O%%HZ*Bx#{wO?iIdL5-I#4i zo~o*Z&fTfA0k(37p+TEpTiJc@0gByFX`^Rx9WxD?SwA7UrO$S@+fWN*SG$xPDF356 zp63~xR6Pi^ySFXc9j9Mncsg2j2~>PMU|xt*rtRo($}x8>d9V()toq-2%yt&q44)(c zUGK+|bl_dPI=~2TLY84+mg*u3e)q@UIZw{f@!iwNnRH<^PqvY67I&=yKJ!UiY-q7Z zlY>nyblB7)gp|SU|1f4Xv~ba?Qa2%GfMN{c@&W09BtR6vA2S>`y_%47Ss1?^#n?{e zbr54X9cDG0$8g0sdTJeJH}oF!u&<}HYgVvo0;Vx^Bn4}3qY>x3y+P(-gQMHZMOa4* z!j#iU3gRNg+i-oN8yvmO=P8ZZM?5Mq_mV1GLt?q@#XtLVt8xrJzMtsq{Dv@oK9XaI z^R52e?r+!xdYKH%258|PD`zKHF4@6T$|;FCcf6h`0= zhP)v9t(V?t@33;E1GmSFybW-|`Aovu-zdrfC!Wj51geesmCkcUc1aNG=zUUDtdzB+qL}W3%=nWIC`W0dxas}zXm;{OeS~O zZwcS`^|nVqU)ub#VM&OJV${T6bLvZ+PpqtocW28&Qxq9DY^5QN-`u#!M~!Xi1&3D! zBb4%=#7zdGB3%lv2HBZvr(Kb;+y^TSgF;kyPym?&|JKa0mGTAPtJ!XkRKtyY#V|ih zzI&2WiT#NTwabGPfzWU!PqE7o+QCzKaDG+&f?{}e{6^=_>X0o5vHFK<-NRv%JZtCV z+MJILupgQ@$xR1B9{uw_xGu*p}m}g zny}k+O{l&RT^+u_DOVfjbW>FW$&lF1iCfSjwxi0n{`gO7zpk~DvMg7*+VETmuhPx* zYUT7rzF%nH{oMg+-5SH-F+9?hx#L{5B6~6(p!Ur926KM=k^Fv4R3PaQbJ(0Ozc!MXI$E>IVRIBD=k`IY6!h+ z{o}@Gx#|=B0Q~_2O4KI?{xVYmJ!K`Qj2iSSS5vk@RifxPC`ra;#|+ZRb0#Xe!j6Li za#wU71Q-lR01N>n0)_&T0K)*ufZ>1?z=)C+okuRLp&O8#wWduP;eI)`gpc<5kf?k* zkaA5Vx#(R3pLCQFV1>FlbJ*(~iSe3G(mnr0iah>9a-g?ls@#}ZRZqBEM8FgLH==-! zqIbJUB9t}crlJE5L2HTSfbFpqus7ED-NQj>$s|Yi5@|gdx=ExgmZ%Yb#PlWWPyt6# zA@oW?r9?38NEPWq&Jk{3)H5TwgpSW-U}^%wnzUnRnF}k&yLEOW26p5?gTCZ^$7j;T z{l4f&=&N1THU)0FR5GCZGsoQ{`KJgx`L8K>sU+0s1}H~tLi`}CMonh*xvDF3oru4m8klRuPJJr7$tq&8m|JiA*vlE;pO9(s7rjuxu?murTZ}2 z5^dG^oA(;CE>My|dx$EzB)sZ{j&l7H^yK7}fpH@eh7Knh6Sn_|OBfiRm=ZsHtbt7# zI=p1_&o4|=uQj%QHA%5ck*04u(8VV|rY5&RY{6IZNJZ2V+4?M z6;Ww#D554*HU84ZFX|@{LlbQa`+10JVoA7u;+Jx-AL89eVhS5a(@%?-nC4mf<`E6E zfyuqwVIp7>U@~9|U@Bl5U^-w%$=wb!{d_xq_yNl2gioJg) znciLCJ@hRp^ZEe$*y!LbG=og`{4dG$sKknfHaPbC1Cpj{jt#4Ckt8&|0=L5?#VsB) z4LWQ!(}Q$T{u3)xyTf?CFbx z+@rc>lUJ}CQ&jba@RDa*%-ZC^{*)H}wsax6}wqZ{!bSlHE%(0xLdc%=)=z{XDaNzFEJ(tbft0 z&oJv39?>sijA1C`bUs%?Kzqyz9CEbZXBbKHd6o;$UbLO7TDB;O%UixEGB?_^s3h97 z_>_h+owl4ZfANd5Nbi!R`HSC|`|vAw6lU7-NLj20cki8$04{p{8BNK|b&Fq{Mp5Ri zS7y%YwNu%QoKt*)ee`-@4KM~SiWX#r{9hzR-h~)tH%P23oM>h3i4FyRj)@^fBGXN0 zqDb`mLz#WJjmk_lx8FTe&#BM65sH%GPBNL3xfEGuMoEP%^O(%H^>o{s=!=?Qn9Ox* z^>(yqy6@?VNm}mPv6(^2EN7jb%hlscdg?P@W*`z| z#8+`!rXaUX%$FWqRzzm6;7Q+DdA~3IFB6K;gFF3HrcT~BQp1%-WJc#^HOmAn0W1Y% z0kTW7nwgfjYrM+3OAlEOx(dKyj-ic(sNUwnlT0K0FVPAeIx;@qFf`fHlUFC1+If}U z8$OU3tS}o*X5&j{<1(``$820~Hk!@GT(fb7+4!>AxYBHV#ca$o8&{c)tIftWW@EnD zxYlfZ)ogstY+PqHu0LYjponUG&ZcF3fL=BhWaPrM6Qc4f3D4i~SDF0BcsFi#V=upw zp|5Rd=~g;^SPb)%o4IJiks?kJrQ2eIPnkeRl>Cfl6#tY@iN1{MDr+Q1MjRN@i8I^) zr6Oauf|PbUK9~tqae=`V-Oc5kxqPF!e3Q9+v$=fBk@5njh}OtjPMN*6ja;D_QPMek z>$@^N3S4o4k^e#nJ6!p9K^W8W_w|Tjac+rhL#xaP_h!GLpX92!4sQnqaFcUysyXfI zt*Tt(vaNt^fI>h~iE-KX?H6b&Q#hq@N6${@RHyl>JngPzD%`#&X>K_rlKD4DQZ{1L z%D(Wx(_syJ7jjyD9Rs8qa+~4i7(hrKFmJt?(05yr8N~Pm%$iEO(BOfFnqnx+2s&u?>GIP#N z(K{BuS|<%-w5r0SOGBA!IX~uHI$WX9Hj;>;EoD4-?GlgNKy3x!GT;i}CqO0OD&QL6 zI-m-0qa;vU{nLLqCTg-@);2KcG@k-808;R<2IuVY9t0bqjA7eUSe_yf=cu>w3jz;& zy-hYkD&F+mLC(X#)Yfw!(IQUs*h>aLIV(`@!}>n(S@(V9D5PVQ`*Pxsc)Hsjk^~9a z1(2zH2kYu|JqqXmKk+6B&O)Tf}ef3=A=+f$v~sf2Oxr?VWf%oP%r?&uZz8xw80DKl_v;R==y&3qpCUQ8jIxou`D7c+&~3_G; z_&cEqE#sv~$Hd;fRy|Qjtl#=#=T#9xV*j(ZX`^M#xL!Rwgtsf7eE%&cBSY@J>(wRq zuK%pe56!1cPrRsp{0iwzF8YL$$?jZO_RW`MnQq*U?3;7e8Ygq*mv(8m_f0o7xf@M4 z0lxrl0e%JC2K)xN1Na?K1E>Yu1>AdOqlsAqpn;4AavCUTprnBt4cuv7`@yvi~;}4 zB_`946!TJwqzzg$G4Eog{cp05=188W7_(iP^4c*eArS6I=2wvjs0}chM@4rmyx3CB zTqwG4)-ra}>UzZ9-H*;dUU@TP%=20k><(!iGn zjcDLU1AiI>Fr_Ek1~R?=K^uhNx+fH68${b+xsjBHBF%1+1EoQ&SwO0wEEup|Y$W1L z^_#?qsj2f`%ZUNXfze|(se!VPf<4%y5f`i0k#$fOYTP$q!M_e;(Cx73(7o4-pd@4V zO39I8G@dpQ$~>aN%{;|gINm{9mT$os_d1-Xu?6F69Z8UFfzp7fDrW22VQ0Da=c60> zE}bUTn<$YAuT}*zFtBw+t?z6-zlEbwU1X@I#yR5Mtqx?;gL%9=vS>#>B5=B5ts~Zf zpLwkINbSn_`Hlimz}oACHRGlQ>&Up7uCdxXVYT}ukO9x4X=&nX>XK%yobY}C-nbAR z@7%dtPIv-`)H|WAzZJ+#59ZNs`Bpok30Vtq!W#B#AOnqn5?QVL$q}noNUV_)TEOi< z2F#zLh3UU>LKADv%L(r*;7t>fThOkx6Q01v6;5cIehXx#2xxoW40lGOQ%}Cjz3gh6 z)D#B%9>`?%r$qK$(4vXG>W0IlEbl{u74*xXi%gWsbY0e}^(|S4pldSC8Ht;~kDX5> z+=3)E;OFiHGMPfTzk1o-QN{@6ZcR$UqNFAFj>3=wOC*>jwRGxo1ly@o6f6}v1O(tL zlP-Nb1XUBhkTqv+JBfdxkhK@w?6S=kev40!7V4(FbCQ!d7we|1(q2EVDKysvGTFhZ zwkWP6`hhJSdZLh#Q%+ckwSf#2B8pY)lsjcK5xK@%E;(IA`#dKxsPK{FaOr$Gc$dhcEfMwU;RwCF&?bLqA` zla3(LK^f~buagWg>GR%2s6!c!rh z>`_P(z`TobP# zSt}H8kP0yCRE+N67NA}ELWh)3Bw1<9y!pdZJrsvAz{V35ZM=X^N!k8-@6qNly1vABxQK`#c&TmN>1x-Xd`Ul6x zC-kp6iZj4vaSE+`v{OQVTi24A6~ZU<^|n)v3DpWiwjoYvy-+sb%`~Yq5r>`8_+dao zsa?^bEB*#Fu#I6r`*Q8qjw4YaTYL7~VI|cRp5j_Et3p&sz)~%eIW6xIm~HGTJ2bYY z@Zd&1Yl%QRzI?k=6$>RYVSybQXq>nSEhAVp1ZbM6-5uG5Kx6GtN33R>TQV4a4FFb6 zn~P4WiICVWC$#T?hI*!Go|n%!q6vx3dDD(*gT$>{S~BAURZjz}p#MBz+05k%I5AE* z0}J?+D9)bvXnUMmQs|o+%jmWCSm>a>TTx;D6lq_4N4ssvgd9Ehh9hmC0Ru_`MM)@H z=gg#e$+&N)Big2I=v2Wx+R4wFJE94hT5qz$LdzIa2=W@MdLXe;7m}TadSrD`OXmHe zRt#gL=G-n@m61#pkxV92cu^k7V$8FW4|wef9g2+ZLBt0sk$@xeth{eaSRMI>|HP4vaZZzmF7E`KT|N>Xkf=a6W_P=*7>fCr~6u?aYON5?HX-)R|Y{h8g!>YG!1&t z;AtB4q(KY~deNXa4f-&p+VWWD<}AOaQpq8X04yhdg+WOy(?p)+r7P@?yN=w7;@5Ky z8FLsq{8q2YOlBDbeQ6L!0|QfWQVV5W1dzY^{OHZ!06*@Pucv*ikgE6Z=Hh&l@MFr6=^HGJSH zNesydqg3FD8~n}&wB%!1|CYB%llfc%6UWL1wd79h(1o_?TBVl((~1ZsP^n0%7qO|P zPe@6WEG|_UVUKq*)frDYpDT8cOK58UW~I}cm7G4jSrB*HJub@eU6>l|vmv}&QlN^P z>|UzKAI#MH_@k7B66TAUcdBS~XxL&+T*+t+`727oT`VK%x0}OnrNeKjOpBk=aNqps z9l_;()To7={e2l&SJk{xFqeNbSHpdFt#_#KU(_$TkzC{Jy?@}g z-Ocsp-i_$dl)Kx!N9*^?1~ZCS@0utf!+iLTudbb%>GRr&M*iHfGcD95#$x4m`G)*i z=oR_|G<5wCG<1C;bMu=HR(%wvN?>n82_^XylP+K$!GL1TBoeEc30KmE*eE0T(6D%Q zXzQ_3`%++bT0C+X?Pucih1Zy&j4>t+yhHc)xKPQzjxLI(?F-HV&r7H>qPSzye96El za+S&WUjAM1^WW3w{3iw%o>UEGe8-k;7#&JKhKDXb7H|78g}j)pxnuJCih)JuDhj$% zmUciID=B`YC2xHneZ>Q>7uJH@9__Qir~gY-G@-NuqhW}*5p=(kt79aR1+2nY%}}Oa zYyS1Wycy>BI{c~a5Te+^b;wJMnn$SI_czFTH;(<*FNEtA>hD)ro=8tpRQ0tc0?iT9 z_gSBz%<>S`XiC)PsZImT(tCKWEVG;1xq|jRR#O^Sj=7()x*4>*ZLS-5nulTtQGMxI zs*g=#4tr9UkG9GUWokvKA}NWfokg9JY+2t?7#>4ZtqX&WCoy{uCHuRTp8GI~Y5Vg3 E1AvpsS^xk5 diff --git a/Source/Base/Base.res b/Source/Base/Base.res index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Base/GUIBase/GUIBase.res b/Source/Base/GUIBase/GUIBase.res index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index 3197c585a7d7529f6781156ce3154d26471506d3..0614ab826ab4d09e941baef9b0ec219ef040f11a 100644 GIT binary patch delta 102 zcmeA;$Tep_S3?Wq7N!GpmG&?)FeorEF#P{70K`BJ5Ew9U@qigXVh`i=M{}7xL|7Og paxifQ1{ucbcJr8&n0_!!PnyRRH~q~#rj+Sl<};a0cUi#X0stao8KwXL delta 331 zcmbQUpR3~_S3?Wq7N!Gpl~yn@FeorEF#P{70K|+y76XF;0~ZgN0VGy1O@B0($wP#J z0U`$zXJBAsnr=6bNr~wZ6rjFbAYH_e z4YURZAZq=gW@G{_1epwT5{Q=z)CUF%3`$@J1OOH11C1*My0wJC520kb{Cp-$Nhz=* UklS*>dh>va!1hfKozLVB07`2)$p8QV diff --git a/Source/Modulos/Contactos/Reports/uRptEtiquetasContactos_Server.pas b/Source/Modulos/Contactos/Reports/uRptEtiquetasContactos_Server.pas index df78558e..5fb273fd 100644 --- a/Source/Modulos/Contactos/Reports/uRptEtiquetasContactos_Server.pas +++ b/Source/Modulos/Contactos/Reports/uRptEtiquetasContactos_Server.pas @@ -59,7 +59,6 @@ end; function TRptEtiquetasContactos.GenerarEtiquetas(const AID: String): Binary; var dsMaster: IDADataset; - dsDetail: IDADataset; AStream: TMemoryStream; begin diff --git a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas index 17348dc7..c1420f43 100644 --- a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas +++ b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas @@ -66,7 +66,6 @@ var dsDataSet: IDADataset; AConnection: IDAConnection; begin - Result := False; AConnection:= dmServer.DarNuevaConexion; AConnection.BeginTransaction; try diff --git a/Source/Modulos/Tienda web/Controller/Utiles/uActualizarArticulosUtils.pas b/Source/Modulos/Tienda web/Controller/Utiles/uActualizarArticulosUtils.pas index 688faa23..393c6e17 100644 --- a/Source/Modulos/Tienda web/Controller/Utiles/uActualizarArticulosUtils.pas +++ b/Source/Modulos/Tienda web/Controller/Utiles/uActualizarArticulosUtils.pas @@ -11,7 +11,7 @@ function ActualizarArticulosTienda(ATiendaWeb : IBizTiendaWeb): Boolean; implementation uses - uArticulosController, uBizArticulos, + uArticulosController, uBizArticulos, uStringsUtils, uOscProductsController, uProveedoresController, uOscManufacturersController, uBizOscManufacturers, uBizOscProducts, uPasswordUtils, schTiendaWebClient_Intf, uDADataTable, @@ -25,7 +25,6 @@ var AOSCProductController : IOscProductsController; AOSCManufacturersController : TOscManufacturersController; AOSCManufacturer : IBizOscManufacturer; - Resultado : Boolean; begin Result := True; @@ -50,8 +49,8 @@ begin AOSCProductController.Anadir(AOSCProducts); with AOSCProducts do begin - products_name := AArticulo.DESCRIPCION; - products_model := AArticulo.REFERENCIA_PROV; + products_name := EscaparCadena(AArticulo.DESCRIPCION); + products_model := EscaparCadena(AArticulo.REFERENCIA_PROV); products_date_added := Now; manufacturers_id := AOSCManufacturer.manufacturers_id; rdx_products_id_local := AArticulo.ID; @@ -59,7 +58,7 @@ begin Post; end; AOSCProductController.Guardar(AOSCProducts); - + finally AOSCProductController := NIL; AOSCManufacturer := NIL; @@ -73,7 +72,6 @@ var AOSCProductController : IOscProductsController; AOSCManufacturersController : TOscManufacturersController; AOSCManufacturer : IBizOscManufacturer; - Resultado : Boolean; begin Result := True; @@ -93,7 +91,7 @@ begin AOSCManufacturer.DataTable.Active := True; if (AOSCManufacturer.DataTable.RecordCount = 0) then raise Exception.CreateFmt('No se ha encontrado el proveedor %d en la tienda web (ActualizarOSCProduct)', [AArticulo.ID_PROVEEDOR]); - + try if not AOSCProductController.Localizar(AOSCProducts, AArticulo.ID) then raise Exception.CreateFmt('No se ha localizado el producto con ID = %d', [AArticulo.ID]); @@ -101,15 +99,15 @@ begin with AOSCProducts do begin Edit; - products_name := AArticulo.DESCRIPCION; - products_model := AArticulo.REFERENCIA_PROV; + products_name := EscaparCadena(AArticulo.DESCRIPCION); + products_model := EscaparCadena(AArticulo.REFERENCIA_PROV); products_last_modified := Now; manufacturers_id := AOSCManufacturer.manufacturers_id; - products_status := 1; + products_status := 1; Post; end; AOSCProductController.Guardar(AOSCProducts); - + finally AOSCProductController := NIL; AOSCManufacturer := NIL; @@ -117,6 +115,47 @@ begin end; end; + +function EliminarOSCProduct(AOSCProducts : IBizOscProduct; AArticulo : IBizArticulo) : Boolean; +var + AOSCProductController : IOscProductsController; + AOSCManufacturersController : TOscManufacturersController; + AOSCManufacturer : IBizOscManufacturer; +begin + Result := True; + + if not Assigned(AOSCProducts) then + raise Exception.Create ('OSCProducts no asignado (EliminarOSCProduct)'); + + if not Assigned(AArticulo) then + raise Exception.Create ('Artículo no asignado (EliminarOSCProduct)'); + + AArticulo.DataTable.Active := True; + + AOSCProductController := TOscProductsController.Create; + AOSCProducts.DataTable.Active := True; + + AOSCManufacturersController := TOscManufacturersController.Create; + AOSCManufacturer := AOSCManufacturersController.Buscar(AArticulo.ID_PROVEEDOR); + AOSCManufacturer.DataTable.Active := True; + if (AOSCManufacturer.DataTable.RecordCount = 0) then + raise Exception.CreateFmt('No se ha encontrado el proveedor %d en la tienda web (ActualizarOSCProduct)', [AArticulo.ID_PROVEEDOR]); + + try + if not AOSCProductController.Localizar(AOSCProducts, AArticulo.ID) then + raise Exception.CreateFmt('No se ha localizado el producto con ID = %d', [AArticulo.ID]); + + AOSCProducts.Delete; + AOSCProductController.Guardar(AOSCProducts); + finally + AOSCProductController := NIL; + AOSCManufacturer := NIL; + AOSCManufacturersController := NIL; + end; +end; + + + function HayCambiosPendientes(AArticulo : IBizArticulo; const UltimaSincro : TDateTime): Boolean; begin if not Assigned(AArticulo) then @@ -209,27 +248,42 @@ begin Application.ProcessMessages; end;} - if not AOSCProductController.Localizar(AOSCProducts, AArticulos.ID) then + + if (AArticulos.TIENDA_WEB = 0) then begin - s := Format('Añadiendo %15s... ', [AArticulos.DESCRIPCION]); - Resultado := AnadirOSCProduct(AOSCProducts, AArticulos); - if Resultado then - s := s + 'OK' - else - s := s + 'Fallo'; + if (AOSCProductController.Localizar(AOSCProducts, AArticulos.ID)) then + begin + s := Format('Eliminado %15s... ', [AArticulos.DESCRIPCION]); + Resultado := EliminarOSCProduct(AOSCProducts, AArticulos); + if Resultado then + s := s + 'OK' + else + s := s + 'Fallo'; + end; end else begin - if HayCambiosPendientes(AArticulos, ATiendaWeb.ULTIMA_ACTUALIZACION) then + if not AOSCProductController.Localizar(AOSCProducts, AArticulos.ID) then begin - s := Format('Actualizando %15s... ', [AArticulos.DESCRIPCION]); - Resultado := ActualizarOSCProduct(AOSCProducts, AArticulos); + s := Format('Añadiendo %15s... ', [AArticulos.DESCRIPCION]); + Resultado := AnadirOSCProduct(AOSCProducts, AArticulos); if Resultado then s := s + 'OK' else s := s + 'Fallo'; end - else - s := Format('%15s... sin cambios', [AArticulos.DESCRIPCION]); + else begin + if HayCambiosPendientes(AArticulos, ATiendaWeb.ULTIMA_ACTUALIZACION) then + begin + s := Format('Actualizando %15s... ', [AArticulos.DESCRIPCION]); + Resultado := ActualizarOSCProduct(AOSCProducts, AArticulos); + if Resultado then + s := s + 'OK' + else + s := s + 'Fallo'; + end + else + s := Format('%15s... sin cambios', [AArticulos.DESCRIPCION]); + end; end; //ADlg.Expando.Lines.Add(s); diff --git a/Source/Modulos/Tienda web/Controller/Utiles/uActualizarClientesUtils.pas b/Source/Modulos/Tienda web/Controller/Utiles/uActualizarClientesUtils.pas index a0e037ba..7b2edf4d 100644 --- a/Source/Modulos/Tienda web/Controller/Utiles/uActualizarClientesUtils.pas +++ b/Source/Modulos/Tienda web/Controller/Utiles/uActualizarClientesUtils.pas @@ -12,7 +12,7 @@ implementation uses uClientesController, uOscAddressBookController, uDireccionesContactoController, - uOscCustomersController, uBizOscAddressBook, uBizOscCustomers, + uOscCustomersController, uBizOscAddressBook, uBizOscCustomers, uStringsUtils, uPasswordUtils, schTiendaWebClient_Intf, uDADataTable, uBizContactos, uBizDireccionesContacto, schContactosClient_Intf, JSDialogs, uDialogUtils, StrUtils, uIntegerListUtils; @@ -42,15 +42,15 @@ begin begin Insert; rdx_address_book_id_local := ADireccionContacto.ID; - entry_company := ACliente.NOMBRE_COMERCIAL; + entry_company := EscaparCadena(ACliente.NOMBRE_COMERCIAL); entry_gender := OSC_CUSTOMER_GENDER; // No puede ser nulo - entry_firstname := ACliente.NOMBRE; + entry_firstname := EscaparCadena(ACliente.NOMBRE); entry_lastname := ''; // No puede ser nulo - entry_street_address := ADireccionContacto.CALLE; - entry_postcode := ADireccionContacto.CODIGO_POSTAL; - entry_city := ADireccionContacto.POBLACION; - entry_state := ADireccionContacto.PROVINCIA; - entry_telephone := ADireccionContacto.TELEFONO; + entry_street_address := EscaparCadena(ADireccionContacto.CALLE); + entry_postcode := EscaparCadena(ADireccionContacto.CODIGO_POSTAL); + entry_city := EscaparCadena(ADireccionContacto.POBLACION); + entry_state := EscaparCadena(ADireccionContacto.PROVINCIA); + entry_telephone := EscaparCadena(ADireccionContacto.TELEFONO); entry_country_id := OSC_CUSTOMER_COUNTRY_ID; // No puede ser nulo entry_zone_id := OSC_CUSTOMER_ZONE_ID; // No puede ser nulo Post; @@ -80,15 +80,15 @@ begin with AOSCAddressBook do begin Edit; - entry_company := ACliente.NOMBRE_COMERCIAL; + entry_company := EscaparCadena(ACliente.NOMBRE_COMERCIAL); entry_gender := OSC_CUSTOMER_GENDER; // No puede ser nulo - entry_firstname := ACliente.NOMBRE; + entry_firstname := EscaparCadena(ACliente.NOMBRE); entry_lastname := ''; // No puede ser nulo - entry_street_address := ADireccionContacto.CALLE; - entry_postcode := ADireccionContacto.CODIGO_POSTAL; - entry_city := ADireccionContacto.POBLACION; - entry_state := ADireccionContacto.PROVINCIA; - entry_telephone := ADireccionContacto.TELEFONO; + entry_street_address := EscaparCadena(ADireccionContacto.CALLE); + entry_postcode := EscaparCadena(ADireccionContacto.CODIGO_POSTAL); + entry_city := EscaparCadena(ADireccionContacto.POBLACION); + entry_state := EscaparCadena(ADireccionContacto.PROVINCIA); + entry_telephone := EscaparCadena(ADireccionContacto.TELEFONO); entry_country_id := OSC_CUSTOMER_COUNTRY_ID; // No puede ser nulo entry_zone_id := OSC_CUSTOMER_ZONE_ID; // No puede ser nulo Post; @@ -132,11 +132,11 @@ begin AOSCCustomerController.Anadir(AOSCCustomers); with AOSCCustomers do begin - customers_firstname := ACliente.NOMBRE; + customers_firstname := EscaparCadena(ACliente.NOMBRE); customers_lastname := ''; // No puede ser nulo - customers_email_address := ACliente.EMAIL_1; - customers_telephone := ACliente.TELEFONO_1; - customers_fax := ACliente.FAX; + customers_email_address := EscaparCadena(ACliente.EMAIL_1); + customers_telephone := EscaparCadena(ACliente.TELEFONO_1); + customers_fax := EscaparCadena(ACliente.FAX); customers_password := EncriptarPasswordOSC(ACliente.NIF_CIF); rdx_customers_id_local := ACliente.ID; Post; diff --git a/Source/Modulos/Tienda web/Controller/Utiles/uActualizarProveedoresUtils.pas b/Source/Modulos/Tienda web/Controller/Utiles/uActualizarProveedoresUtils.pas index 54bda5c8..9b7bf734 100644 --- a/Source/Modulos/Tienda web/Controller/Utiles/uActualizarProveedoresUtils.pas +++ b/Source/Modulos/Tienda web/Controller/Utiles/uActualizarProveedoresUtils.pas @@ -11,7 +11,7 @@ function ActualizarProveedoresTienda(ATiendaWeb : IBizTiendaWeb): Boolean; implementation uses - uProveedoresController, uOscManufacturersController, + uProveedoresController, uOscManufacturersController, uStringsUtils, uBizOscManufacturers, uPasswordUtils, schTiendaWebClient_Intf, uDADataTable, uBizContactos, uBizDireccionesContacto, schContactosClient_Intf, JSDialogs, uDialogUtils, StrUtils, uIntegerListUtils; @@ -20,8 +20,6 @@ uses function AnadirOSCManufacturer(AOSCManufacturers : IBizOscManufacturer; AProveedor : IBizProveedor): Boolean; var AOSCManufacturerController : IOscManufacturersController; - i : Integer; - Resultado : Boolean; begin Result := True; @@ -40,7 +38,7 @@ begin AOSCManufacturerController.Anadir(AOSCManufacturers); with AOSCManufacturers do begin - manufacturers_name := AProveedor.NOMBRE; + manufacturers_name := EscaparCadena(AProveedor.NOMBRE); date_added := Now; rdx_manufacturers_id_local := AProveedor.ID; Post; @@ -56,8 +54,6 @@ end; function ActualizarOSCManufacturer(AOSCManufacturers : IBizOscManufacturer; AProveedor : IBizProveedor) : Boolean; var AOSCManufacturerController : IOscManufacturersController; - i : Integer; - Resultado : Boolean; begin Result := True; @@ -79,7 +75,7 @@ begin with AOSCManufacturers do begin Edit; - manufacturers_name := AProveedor.NOMBRE; + manufacturers_name := EscaparCadena(AProveedor.NOMBRE); last_modified := Now; Post; end; diff --git a/Source/Modulos/Tienda web/Controller/uTiendaWebController.pas b/Source/Modulos/Tienda web/Controller/uTiendaWebController.pas index bcaf829b..ce551c50 100644 --- a/Source/Modulos/Tienda web/Controller/uTiendaWebController.pas +++ b/Source/Modulos/Tienda web/Controller/uTiendaWebController.pas @@ -39,10 +39,12 @@ type function Buscar(const ID_Empresa: Integer): IBizTiendaWeb; function Ver(ATiendaWeb: IBizTiendaWeb) : Integer; - function HayConexionConTienda(ATiendaWeb : IBizTiendaWeb): Boolean; overload; - function HayConexionConTienda(const ABDServer : String; + function HayConexionConTienda: Boolean; + + {function HayConexionConTienda(ATiendaWeb : IBizTiendaWeb): Boolean; overload; + function HayConexionConTienda(const ABDServer : String; const ABDName : String; const ABDUser : String; - const ABDPass : String): Boolean; overload; + const ABDPass : String): Boolean; overload;} function ActualizarTienda(ATiendaWeb : IBizTiendaWeb): Boolean; function DescargarPedidos(ATiendaWeb : IBizTiendaWeb): Boolean; @@ -71,10 +73,11 @@ type function Buscar(const ID_Empresa: Integer): IBizTiendaWeb; function Ver(ATiendaWeb: IBizTiendaWeb) : Integer; - function HayConexionConTienda(ATiendaWeb : IBizTiendaWeb): Boolean; overload; - function HayConexionConTienda(const ABDServer : String; + function HayConexionConTienda: Boolean; + {function HayConexionConTienda(ATiendaWeb : IBizTiendaWeb): Boolean; overload; + function HayConexionConTienda(const ABDServer : String; const ABDName : String; const ABDUser : String; - const ABDPass : String): Boolean; overload; + const ABDPass : String): Boolean; overload;} function ActualizarTienda(ATiendaWeb : IBizTiendaWeb): Boolean; function DescargarPedidos(ATiendaWeb : IBizTiendaWeb): Boolean; @@ -120,7 +123,7 @@ begin Exit; end; - if not Self.HayConexionConTienda(ATiendaWeb) then + if not Self.HayConexionConTienda then begin ShowErrorMessage('No hay conexión con la tienda web', 'Se ha producido un error al intentar realizar la conexión con la tienda web.' + #10#13 + 'Inténtelo de nuevo pasados unos minutos o revise los datos de conexión a la tienda.'); @@ -299,7 +302,7 @@ begin Exit; end; - if not Self.HayConexionConTienda(ATiendaWeb) then + if not Self.HayConexionConTienda then begin ShowErrorMessage('No hay conexión con la tienda web', 'Se ha producido un error al intentar realizar la conexión con la tienda web.' + #10#13 + 'Inténtelo de nuevo pasados unos minutos o revise los datos de conexión a la tienda.'); @@ -462,7 +465,12 @@ begin end; -function TTiendaWebController.HayConexionConTienda( +function TTiendaWebController.HayConexionConTienda: Boolean; +begin + Result := FDataModule.HayConexionConTienda; +end; + +{function TTiendaWebController.HayConexionConTienda( ATiendaWeb: IBizTiendaWeb): Boolean; begin if not Assigned(ATiendaWeb) then @@ -518,6 +526,6 @@ begin finally FreeAndNIL(SQLConnection1); end; -end; +end;} end. diff --git a/Source/Modulos/Tienda web/Data/uDataModuleTiendaWeb.pas b/Source/Modulos/Tienda web/Data/uDataModuleTiendaWeb.pas index a8df944d..0ca2c8fb 100644 --- a/Source/Modulos/Tienda web/Data/uDataModuleTiendaWeb.pas +++ b/Source/Modulos/Tienda web/Data/uDataModuleTiendaWeb.pas @@ -86,6 +86,7 @@ type function GetOSCOrders: IBizOscOrder; function GetOSCOrder(const IDLocal : Integer): IBizOscOrder; + function HayConexionConTienda : Boolean; end; implementation @@ -379,4 +380,9 @@ begin end; end; +function TDataModuleTiendaWeb.HayConexionConTienda: Boolean; +begin + Result := (RORemoteService as IsrvTiendaWeb).HayConexionConTienda; +end; + end. diff --git a/Source/Modulos/Tienda web/Model/Data/uIDataModuleTiendaWeb.pas b/Source/Modulos/Tienda web/Model/Data/uIDataModuleTiendaWeb.pas index fde252b0..d0e5d480 100644 --- a/Source/Modulos/Tienda web/Model/Data/uIDataModuleTiendaWeb.pas +++ b/Source/Modulos/Tienda web/Model/Data/uIDataModuleTiendaWeb.pas @@ -52,7 +52,9 @@ type function GetOSCOrders: IBizOscOrder; function GetOSCOrder(const IDLocal : Integer): IBizOscOrder; - function GetNextIDOSC(const DataSetName : String) : Integer; + function GetNextIDOSC(const DataSetName : String) : Integer; + + function HayConexionConTienda : Boolean; end; implementation diff --git a/Source/Modulos/Tienda web/Model/uBizOscCustomerServer.pas b/Source/Modulos/Tienda web/Model/uBizOscCustomerServer.pas index f9641308..fdb075b0 100644 --- a/Source/Modulos/Tienda web/Model/uBizOscCustomerServer.pas +++ b/Source/Modulos/Tienda web/Model/uBizOscCustomerServer.pas @@ -24,13 +24,17 @@ type aChangeType: TDAChangeType; aChange: TDADeltaChange; const aCommand: IDASQLCommand; var CanRemoveFromDelta: Boolean; Error: Exception); override; + + procedure GenerateSQL(Sender: TDABusinessProcessor; + ChangeType: TDAChangeType; const ReferencedStatement: TDAStatement; + const aDelta: IDADelta; var SQL: string); override; end; implementation uses Dialogs, Variants, uDataModuleServer, uDAClasses, DARemoteService_Impl, - schTiendaWebClient_Intf, uROClasses, srvTiendaWeb_Impl, Windows; + schTiendaWebClient_Intf, uROClasses, srvTiendaWeb_Impl, Windows, uServerMainForm; { TBizOscCustomerServer } @@ -81,6 +85,14 @@ begin end; end; +procedure TBizOscCustomerServer.GenerateSQL(Sender: TDABusinessProcessor; + ChangeType: TDAChangeType; const ReferencedStatement: TDAStatement; + const aDelta: IDADelta; var SQL: string); +begin + inherited; + fServerForm.Memo1.Lines.Add(SQL); +end; + procedure TBizOscCustomerServer.Insert_Customers_Info(aChange: TDADeltaChange); var ASchema : TDASchema; diff --git a/Source/Modulos/Tienda web/Model/uBizOscProductServer.pas b/Source/Modulos/Tienda web/Model/uBizOscProductServer.pas index 0288d95c..c74201df 100644 --- a/Source/Modulos/Tienda web/Model/uBizOscProductServer.pas +++ b/Source/Modulos/Tienda web/Model/uBizOscProductServer.pas @@ -158,8 +158,8 @@ begin begin ParamByName('products_id').Value := aChange.NewValueByName[fld_osc_Productsproducts_id]; ParamByName('language_id').Value := AIdiomasDataSet.FieldByName(fld_osc_Languageslanguages_id).Value; - ParamByName('products_name').Value := TratarCadena(aChange.NewValueByName[fld_osc_Productsproducts_name]); - ParamByName('products_description').Value := TratarCadena(aChange.NewValueByName[fld_osc_Productsproducts_description]); + ParamByName('products_name').Value := aChange.NewValueByName[fld_osc_Productsproducts_name]; + ParamByName('products_description').Value := aChange.NewValueByName[fld_osc_Productsproducts_description]; ParamByName('products_url').Value := null; ParamByName('products_viewed').Value := 0; Execute; @@ -230,8 +230,8 @@ begin begin ParamByName('OLD_products_id').Value := aChange.OldValueByName[fld_osc_Productsproducts_id]; ParamByName('OLD_language_id').Value := AIdiomasDataSet.FieldByName(fld_osc_Languageslanguages_id).Value; - ParamByName('products_name').Value := TratarCadena(aChange.NewValueByName[fld_osc_Productsproducts_name]); - ParamByName('products_description').Value := TratarCadena(aChange.NewValueByName[fld_osc_Productsproducts_description]); + ParamByName('products_name').Value := aChange.NewValueByName[fld_osc_Productsproducts_name]; + ParamByName('products_description').Value := aChange.NewValueByName[fld_osc_Productsproducts_description]; ParamByName('products_url').Value := null; ParamByName('products_viewed').Value := 0; Execute; diff --git a/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.dfm b/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.dfm index 49d8df31..135329d9 100644 --- a/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.dfm +++ b/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.dfm @@ -53,7 +53,7 @@ object PluginTiendaWeb: TPluginTiendaWeb Tag = 2 Action = actActualizarTienda end - object N3: TMenuItem + object N1: TMenuItem Tag = 3 Caption = '-' end diff --git a/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.pas b/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.pas index 9d2bf4f4..ef6e2ee3 100644 --- a/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.pas +++ b/Source/Modulos/Tienda web/Plugin/uPluginTiendaWeb.pas @@ -20,11 +20,11 @@ type SmallImages: TPngImageList; actActualizarTienda: TAction; actConfigurarTienda: TAction; - Configurartienda1: TMenuItem; Actualizartienda1: TMenuItem; Recogerpedidos1: TMenuItem; iendaweb1: TMenuItem; - N3: TMenuItem; + Configurartienda1: TMenuItem; + N1: TMenuItem; procedure actRecogerPedidosExecute(Sender: TObject); procedure actConfigurarTiendaExecute(Sender: TObject); procedure actActualizarTiendaExecute(Sender: TObject); diff --git a/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.dfm b/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.dfm index de598544..2b3fcfee 100644 --- a/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.dfm +++ b/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.dfm @@ -1984,10 +1984,12 @@ object srvTiendaWeb: TsrvTiendaWeb 'INSERT'#10' INTO customers'#10' (customers_firstname,'#10' customers' + '_lastname, customers_email_address,'#10' customers_default_addre' + 'ss_id, customers_telephone, '#10' customers_fax, customers_passw' + - 'ord,'#10' rdx_customers_id_local)'#10' VALUES'#10' (:customers_first' + - 'name,'#10' :customers_lastname, :customers_email_address,'#10' :' + - 'customers_default_address_id, :customers_telephone, '#10' :custo' + - 'mers_fax, :customers_password,'#10' :rdx_customers_id_local)' + 'ord,'#10' rdx_customers_id_local,'#10' customers_gender, custome' + + 'rs_dob)'#10' VALUES'#10' (:customers_firstname,'#10' :customers_last' + + 'name, :customers_email_address,'#10' :customers_default_address_' + + 'id, :customers_telephone, '#10' :customers_fax, :customers_passw' + + 'ord,'#10' :rdx_customers_id_local,'#10' '#39' '#39', '#39'0000-00-00 00:00:0' + + '0'#39')' StatementType = stSQL ColumnMappings = <> end> @@ -2744,11 +2746,13 @@ object srvTiendaWeb: TsrvTiendaWeb Connection = 'MySQL' TargetTable = 'products' SQL = - 'INSERT'#10' INTO products'#10' (products_model, products_status,'#10' ' + - ' products_date_added, products_last_modified,'#10' manufacturer' + - 's_id, rdx_products_id_local)'#10' VALUES'#10' (:products_model, :pro' + - 'ducts_status, current_timestamp, null,'#10' :manufacturers_id, :' + - 'rdx_products_id_local)' + 'INSERT'#10' INTO products'#10' (products_model, products_status, pro' + + 'ducts_quantity,'#10' products_price, products_weight, products_t' + + 'ax_class_id,'#10' products_ordered, products_date_added, product' + + 's_last_modified,'#10' manufacturers_id, rdx_products_id_local)'#10' ' + + ' VALUES'#10' (:products_model, :products_status, 0,'#10' 0, 0, 0,' + + #10' 0, current_timestamp, null,'#10' :manufacturers_id, :rdx_p' + + 'roducts_id_local)' StatementType = stSQL ColumnMappings = <> end> diff --git a/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.pas b/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.pas index 0ae88bba..8ecda7b7 100644 --- a/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.pas +++ b/Source/Modulos/Tienda web/Servidor/srvTiendaWeb_Impl.pas @@ -50,6 +50,7 @@ type function GetDatasetDataExOSC(const DatasetName: String; const Params: TDADatasetParamArray; const UserFilter: String; const IncludeSchema: Boolean; const MaxRecords: Integer): Binary; function UpdateDataOSC(const Delta: Binary): Binary; + function HayConexionConTienda: Boolean; end; implementation @@ -59,7 +60,7 @@ uses {Generated:} FactuGES_Invk, uDataModuleServer, schTiendaWebClient_Intf, uDatabaseUtils, uRestriccionesUsuarioUtils, Dialogs, uBizTiendaWebServer, uBizOscCustomerServer, uBizOscAddressBookServer, uBizOscManufacturerServer, - uBizOscProductServer, uUsersManager, uBizOscOrderServer; + uBizOscProductServer, uUsersManager, uBizOscOrderServer, uTiendaWebUtils; procedure Create_srvTiendaWeb(out anInstance : IUnknown); begin @@ -149,6 +150,13 @@ begin end; end; +function TsrvTiendaWeb.HayConexionConTienda: Boolean; +var + AErrMsg : String; +begin + Result := uTiendaWebUtils.HayConexionConTienda(dmServer.FOSCServer, AErrMsg); +end; + function TsrvTiendaWeb.UpdateDataOSC(const Delta: Binary): Binary; begin AsignarConexion('MySQL'); diff --git a/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.dfm b/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.dfm index dda8eec8..5e4a01a9 100644 --- a/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.dfm +++ b/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.dfm @@ -65,6 +65,7 @@ object fEditorTiendaWeb: TfEditorTiendaWeb Anchors = [akLeft, akTop, akRight, akBottom] Caption = 'Probar conexi'#243'n con la tienda' TabOrder = 1 + Visible = False DesignSize = ( 333 198) diff --git a/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.pas b/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.pas index 7917be56..48ad1f15 100644 --- a/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.pas +++ b/Source/Modulos/Tienda web/Views/uEditorTiendaWeb.pas @@ -80,8 +80,9 @@ end; procedure TfEditorTiendaWeb.actComprobarExecute(Sender: TObject); begin - if FController.HayConexionConTienda(edtBDSERVER.Text, edtBDNAME.Text, - edtBDUSER.Text, edtBDPASS.Text) then +{ if FController.HayConexionConTienda(edtBDSERVER.Text, edtBDNAME.Text, + edtBDUSER.Text, edtBDPASS.Text) then} + if FController.HayConexionConTienda then ShowInfoMessage('Conexión válida con la tienda') else ShowErrorMessage('Error de conexión', 'No se ha podido establecer la conexión con la base de datos.'); diff --git a/Source/Servicios/FactuGES.RODL b/Source/Servicios/FactuGES.RODL index 8f05b2aa..860b5fd8 100644 --- a/Source/Servicios/FactuGES.RODL +++ b/Source/Servicios/FactuGES.RODL @@ -444,6 +444,12 @@ + + + + + + diff --git a/Source/Servicios/FactuGES_Intf.pas b/Source/Servicios/FactuGES_Intf.pas index 4ba34f69..fd316c29 100644 --- a/Source/Servicios/FactuGES_Intf.pas +++ b/Source/Servicios/FactuGES_Intf.pas @@ -519,6 +519,7 @@ type function GetDatasetDataExOSC(const DatasetName: String; const Params: TDADatasetParamArray; const UserFilter: String; const IncludeSchema: Boolean; const MaxRecords: Integer): Binary; function UpdateDataOSC(const Delta: Binary): Binary; + function HayConexionConTienda: Boolean; end; { CosrvTiendaWeb } @@ -537,6 +538,7 @@ type function GetDatasetDataExOSC(const DatasetName: String; const Params: TDADatasetParamArray; const UserFilter: String; const IncludeSchema: Boolean; const MaxRecords: Integer): Binary; function UpdateDataOSC(const Delta: Binary): Binary; + function HayConexionConTienda: Boolean; end; { IsrvFacturasProveedor } @@ -1950,6 +1952,28 @@ begin end end; +function TsrvTiendaWeb_Proxy.HayConexionConTienda: Boolean; +var + __request, __response : TMemoryStream; +begin + __request := TMemoryStream.Create; + __response := TMemoryStream.Create; + + try + __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'HayConexionConTienda'); + __Message.Finalize; + + __Message.WriteToStream(__request); + __TransportChannel.Dispatch(__request, __response); + __Message.ReadFromStream(__response); + + __Message.Read('Result', TypeInfo(Boolean), result, []); + finally + __request.Free; + __response.Free; + end +end; + { CosrvFacturasProveedor } class function CosrvFacturasProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvFacturasProveedor; diff --git a/Source/Servicios/FactuGES_Invk.pas b/Source/Servicios/FactuGES_Invk.pas index d0c1f6eb..4ba035d6 100644 --- a/Source/Servicios/FactuGES_Invk.pas +++ b/Source/Servicios/FactuGES_Invk.pas @@ -165,6 +165,7 @@ type procedure Invoke_GetDatasetSchemaOSC(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GetDatasetDataExOSC(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_UpdateDataOSC(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); + procedure Invoke_HayConexionConTienda(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; TsrvFacturasProveedor_Invoker = class(TDARemoteService_Invoker) @@ -1065,6 +1066,22 @@ begin end; end; +procedure TsrvTiendaWeb_Invoker.Invoke_HayConexionConTienda(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); +{ function HayConexionConTienda: Boolean; } +var + lResult: Boolean; +begin + try + lResult := (__Instance as IsrvTiendaWeb).HayConexionConTienda; + + __Message.Initialize(__Transport, 'FactuGES', 'srvTiendaWeb', 'HayConexionConTiendaResponse'); + __Message.Write('Result', TypeInfo(Boolean), lResult, []); + __Message.Finalize; + + finally + end; +end; + { TsrvFacturasProveedor_Invoker } procedure TsrvFacturasProveedor_Invoker.Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); diff --git a/Source/Servicios/RODLFILE.res b/Source/Servicios/RODLFILE.res index e3b543044e465462fe500824d6be82dd001c4555..351b381cf18d1e1d11f48e4b0a904764d4260527 100644 GIT binary patch delta 96 zcmaEOnQ_fk#t8~cFf@m`&aprOs}_V8vj>U^)4DlqUev2^qQo delta 108 zcmZ3njd24I-HBi{nS3`w9!UO;h-RELIWkh2F>iBiBr~IB7K17SBZD(TK0_`;0YfH3 z4nrz~3qvA936KVXT%g!Xh9ZV!pbC&&F@p|+0)rug;pB}`>g(~! CtsCnA diff --git a/Source/Servidor/Utiles/uSchemaUtilsServer.pas b/Source/Servidor/Utiles/uSchemaUtilsServer.pas index 4985f3b5..f5445f1e 100644 --- a/Source/Servidor/Utiles/uSchemaUtilsServer.pas +++ b/Source/Servidor/Utiles/uSchemaUtilsServer.pas @@ -39,7 +39,6 @@ var i : integer; Separador : String; bHayAgrupacion : Boolean; - APos : Integer; function GetTrueFieldName(AField : string; ConAlias : Boolean = True) : String; var @@ -131,7 +130,6 @@ function TReplicarDataSet.GetNewDataSet: IDADataset; var SQL: String; ASchemaDataSet: TDADataSet; - AField: TDAField; AColumnList : TStringList; i, j : Integer; begin diff --git a/Source/Servidor/Utiles/uTiendaWebUtils.pas b/Source/Servidor/Utiles/uTiendaWebUtils.pas index b8b01c49..18eaa52d 100644 --- a/Source/Servidor/Utiles/uTiendaWebUtils.pas +++ b/Source/Servidor/Utiles/uTiendaWebUtils.pas @@ -2,7 +2,7 @@ unit uTiendaWebUtils; interface -function TratarCadena (Cadena: String): String; +//function TratarCadena (Cadena: String): String; function HayConexionConTienda(const AODBCName : String; var AErrorMsg: String): Boolean; @@ -23,7 +23,7 @@ begin Name := 'ADOConnection1'; Provider := 'MSDASQL.1'; LoginPrompt := False; - ConnectionString := 'Provider=MSDASQL.1;Persist Security Info=False;' + + ConnectionString := 'Provider=MSDASQL.1;Persist Security Info=False;CHARSET=utf8;' + 'Data Source=' + AODBCName; try @@ -43,9 +43,9 @@ begin end; end; -function TratarCadena (Cadena: String): String; +{function TratarCadena (Cadena: String): String; begin Result := StringReplace(Cadena, '''', '\\''', []); -end; +end;} end. diff --git a/Source/Servidor/uAcercaDe.pas b/Source/Servidor/uAcercaDe.pas index a8b4a07f..31b7a860 100644 --- a/Source/Servidor/uAcercaDe.pas +++ b/Source/Servidor/uAcercaDe.pas @@ -21,7 +21,7 @@ implementation {$R *.dfm} -uses JclFileUtils; +uses JclFileUtils, uDAInterfaces; procedure TfAcercaDe.FormShow(Sender: TObject); var diff --git a/Source/Servidor/uDataModuleServer.dfm b/Source/Servidor/uDataModuleServer.dfm index 41016a17..3ef34648 100644 --- a/Source/Servidor/uDataModuleServer.dfm +++ b/Source/Servidor/uDataModuleServer.dfm @@ -48,8 +48,8 @@ object dmServer: TdmServer item Name = 'MySQL' ConnectionString = - 'ADO?AuxDriver=MSDASQL.1;Server=OSCommerce Desarrollo;UserID=root' + - ';Password=;Option=3;' + 'ADO?AuxDriver=MSDASQL.1;Server="OSCommerce Desarrollo";useUnicod' + + 'e=True;characterEncoding=latin1_spanish_ci;' Default = False Tag = 0 end diff --git a/Source/Servidor/uDataModuleServer.pas b/Source/Servidor/uDataModuleServer.pas index 246de397..c1a21255 100644 --- a/Source/Servidor/uDataModuleServer.pas +++ b/Source/Servidor/uDataModuleServer.pas @@ -268,7 +268,7 @@ begin ConnectionManager.Connections.GetDefaultConnection.ConnectionString := GetConnectionString; with ConnectionManager.Connections.ConnectionByName('MySQL') do - ConnectionString := 'ADO?AuxDriver=MSDASQL.1;Server=' + FOSCServer + ';useUnicode=True;characterEncoding=UTF_8'; + ConnectionString := 'ADO?AuxDriver=MSDASQL.1;Server=' + FOSCServer + ';useUnicode=True;characterEncoding=latin1_spanish_ci;'; ShowBalloonHint('Conectado a ' + ConnectionName, biInfo); diff --git a/Source/Servidor/uServerMainForm.pas b/Source/Servidor/uServerMainForm.pas index eb28cdd6..3901355f 100644 --- a/Source/Servidor/uServerMainForm.pas +++ b/Source/Servidor/uServerMainForm.pas @@ -74,7 +74,7 @@ begin for i := 0 to dmServer.ConnectionManager.Connections.Count - 1 do Memo1.Lines.Add(dmServer.ConnectionManager.Connections[i].Name + ' -> ' + dmServer.ConnectionManager.Connections[i].ConnectionString); end; -// JvTrayIcon.HideApplication; + JvTrayIcon.HideApplication; end; procedure TfServerForm.actRestartExecute(Sender: TObject);