sexta-feira, 24 de abril de 2009

Inserção de Símbolos com teclado (código ASCII)

Em ficheiros PDF com campos de formulário para preenchimento, temos às vezes o problema de querer inserir símbolos (tipo diâmetro, fi,etc) e não temos barras de ferramentas que nos permitam essa inserção.

Há uma maneira simples de o fazer:

Tecla ALT + um código de números (inserção do código ASCII).

Exemplos:

ALT+157    Ø

ALT+156    £

ALT+11        

Tabela ASCII - Completa

A Tabela completa de ASCII (American Standard Code for Information Interchange) que é composta pela tabela ASCII Normal (32 a 127), tabela dos Caracteres de Controle (0 a 31) e a tabela ASCII Estendida (128 a 255).

Decimal 

Binário

Hex 

Referência 

 

Decimal 

Binário

Hex 

Referência Referência

0 

00000000 

00 

Null - NUL 

 

128 

10000000 

80 

 Ç 

1 

00000001 

01 

    Start of Heading - SOH 

 

129 

10000001 

81 

 ü 

2 

00000010 

02 

Start of Text - STX 

 

130 

10000010 

82 

 é 

3 

00000011 

03 

End of Text - ETX 

 

131 

10000011 

83 

â 

4 

00000100 

04 

End of Transmission - EOT 

 

132 

10000100 

84 

ä 

5 

00000101 

05 

Enquiry - ENQ 

 

133 

10000101 

85 

à 

6 

00000110 

06 

Acknowledge - ACK 

 

134 

10000110 

86 

å 

7 

00000111 

07 

Bell, rings terminal bell - BEL 

 

135 

10000111 

87 

ç 

8 

00001000 

08 

 BackSpace - BS 

 

136 

10001000 

88 

ê 

9 

00001001 

09 

Horizontal Tab - HT 

 

137 

10001001 

89 

ë 

10 

00001010 

0A 

Line Feed - LF 

 

138 

10001010 

8A 

è 

11 

00001011 

0B 

Vertical Tab - VT 

 

139 

10001011 

8B 

ï 

12 

00001100 

0C 

Form Feed - FF 

 

140 

10001100 

8C 

î 

13 

00001101 

0D 

  Enter - CR 

 

141 

10001101 

8D 

ì 

14 

00001110 

0E 

 Shift-Out - SO

 

142 

10001110 

8E 

Ä 

15 

00001111 

0F 

 Shift-In - SI 

 

143 

10001111 

8F 

Å 

16 

00010000 

10 

  Data Link Escape - DLE 

 

144 

10010000 

90 

É 

17 

00010001 

11 

 Device Control 1 - D1 

 

145 

10010001 

91 

æ 

18 

00010010 

12 

 Device Control 2 - D2 

 

146 

10010010 

92 

Æ 

19 

00010011 

13 

Device Control 3 - D3 

 

147

10010011 

93 

ô 

20 

00010100 

14 

Device Control 4 - D4 

 

148 

10010100 

94 

ö 

21 

00010101 

15 

 Negative Acknowledge - NAK 

 

149 

10010101 

95 

ò 

22 

00010110 

16 

     Synchronous idle - SYN 

 

150 

10010110 

96 

û 

23 

00010111 

17 

End Transmission Block - ETB 

 

151 

10010111 

97 

ù 

24 

00011000 

18 

    Cancel line - CAN 

 

152 

10011000 

98 

ÿ 

25 

00011001 

19 

     End of Medium - EM 

 

153 

10011001 

99 

Ö 

26 

00011010 

1A 

     Substitute - SUB 

 

154 

10011010 

9A 

Ü 

27 

00011011 

1B 

Escape - ESC

 

155 

10011011 

9B 

ø 

28 

00011100 

1C 

     File Separator - FS 

 

156 

10011100 

9C 

£ 

29 

00011101 

1D 

 Group Separator - GS 

 

157 

10011101 

9D 

Ø 

30 

00011110 

1E 

 Record Separator - RS 

 

158 

10011110 

9E 

× 

31 

00011111 

1F 

     Unit Separator - US 

 

159 

10011111 

9F 

ƒ 

32 

00100000 

20 

Space - SPC 

 

160 

10100000

A0 

á 

33 

00100001 

21 

! 

 

161 

10100001 

A1 

ù 

34 

00100010 

22 

" 

 

162 

10100010 

A2 

ó 

35 

00100011 

23 

# 

 

163 

10100011 

A3 

ú 

36 

00100100

24 

$ 

 

164 

10100100 

A4 

ñ 

37 

00100101 

25 

% 

 

165 

10100101 

A5 

Ñ 

38 

00100110 

26 

& 

 

166 

10100110 

A6 

ª 

39 

00100111 

27 

' 

 

167 

10100111 

A7 

º 

40 

00101000 

28 

( 

 

168 

10101000 

A8 

¿ 

41 

00101001 

29 

) 

 

169 

10101001 

A9 

® 

42 

00101010 

2A 

* 

 

170 

10101010 

AA 

¬ 

43 

00101011 

2B 

+ 

 

171 

10101011 

AB 

½ 

44 

00101100 

2C 

, 

 

172 

10101100 

AC 

¼ 

45 

00101101 

2D 

- 

 

173 

10101101 

AD 

¡ 

46 

00101110 

2E 

. 

 

174

10101110 

AE 

« 

47 

00101111 

2F 

/ 

 

175 

10101111 

AF 

» 

48 

00110000 

30 

0 

 

176 

10110000 

B0 

 

49 

00110001 

31 

1 

 

177 

10110001 

B1 

 

50 

00110010 

32

2 

 

178 

10110010 

B2 

 

51 

00110011 

33 

3 

 

179 

10110011 

B3 

 

52 

00110100 

34 

4 

 

180 

10110100 

B4 

 

53 

00110101 

35 

5 

 

181 

10110101 

B5 

Á 

54 

00110110 

36 

6 

 

182 

10110110 

B6 

 

55 

00110111 

37 

7 

 

183 

10110111 

B7 

À 

56 

00111000 

38 

8 

 

184 

10111000 

B8 

© 

57 

00111001 

39 

9 

 

185 

10111001 

B9 

 

58 

00111010 

3A 

: 

 

186 

10111010 

BA 

 

59 

00111011 

3B 

; 

 

187 

10111011 

BB 

 

60 

00111100 

3C 

< 

 

188 

10111100 

BC 

 

61 

00111101 

3D 

= 

 

189 

10111101 

BD 

¢ 

62 

00111110 

3E 

> 

 

190 

10111110

BE 

¥ 

63 

00111111 

3F 

? 

 

191 

10111111 

BF 

 

64 

01000000 

40 

@ 

 

192 

11000000 

C0 

 

65 

01000001 

41 

A 

 

193 

11000001 

C1 

 

66 

01000010 

42 

B 

 

194 

11000010 

C2 

 

67 

01000011 

43 

C 

 

195 

11000011 

C3 

 

68 

01000100 

44 

D 

 

196 

11000100 

C4 

 

69 

01000101 

45 

E 

 

197 

11000101 

C5 

 

70 

01000110 

46 

F 

 

198 

11000110 

C6 

ã 

71 

01000111 

47 

G 

 

199 

11000111 

C7 

à

72 

01001000 

48 

H 

 

200 

11001000 

C8 

 

73 

01001001 

49 

I 

 

201 

11001001 

C9 

 

74 

01001010 

4A 

J 

 

202 

11001010 

CA 

 

75 

01001011 

4B 

K 

 

203 

11001011 

CB

 

76 

01001100 

4C 

L 

 

204 

11001100 

CC 

 

77 

01001101 

4D 

M 

 

205 

11001101 

CD 

 

78 

01001110 

4E 

N 

 

206 

11001110 

CE 

 

79 

01001111 

4F 

O 

 

207 

11001111 

CF 

¤ 

80 

01010000 

50 

P 

 

208 

11010000 

D0 

ð 

81 

01010001 

51 

Q 

 

209 

11010001 

D1 

Р

82 

01010010 

52 

R 

 

210 

11010010 

D2 

Ê 

83 

01010011 

53 

S 

 

211 

11010011 

D3 

Ë 

84 

01010100 

54 

T 

 

212 

11010100 

D4 

È 

85 

01010101 

55 

U 

 

213 

11010101 

D5 

ı 

86 

01010110 

56 

V 

 

214 

11010110 

D6 

Í 

87 

01010111 

57 

W 

 

215 

11010111 

D7 

Π

88 

01011000 

58 

X 

 

216 

11011000 

D8 

Ï 

89 

01011001 

59 

Y 

 

217 

11011001

D9 

 

90 

01011010 

5A 

Z 

 

218 

11011010 

DA 

 

91 

01011011 

5B 

[ 

 

219 

11011011 

DB 

 

92 

01011100 

5C 

\ 

 

220 

11011100 

DC 

 

93 

01011101

5D 

] 

 

221 

11011101 

DD 

¦ 

94 

01011110 

5E 

^ 

 

222 

11011110 

DE 

Ì 

95 

01011111 

5F 

_ 

 

223 

11011111 

DF 

 

96 

01100000 

60 

` 

 

224 

11100000 

E0 

Ó 

97 

01100001 

61 

a 

 

225 

11100001 

E1 

ß 

98 

01100010 

62 

b 

 

226 

11100010 

E2 

Ô 

99 

01100011 

63 

c 

 

227 

11100011 

E3 

Ò 

100 

01100100 

64 

d 

 

228 

11100100 

E4 

õ 

101 

01100101 

65 

e 

 

229 

11100101 

E5 

Õ 

102 

01100110 

66 

f 

 

230 

11100110 

E6

µ 

103 

01100111 

67 

g 

 

231 

11100111 

E7 

þ 

104 

01101000 

68 

h 

 

232 

11101000 

E8 

Þ 

105 

01101001 

69 

i 

 

233 

11101001 

E9 

Ú 

106 

01101010 

6A 

j 

 

234 

11101010 

EA 

Û 

107 

01101011 

6B 

k 

 

235 

11101011 

EB 

Ù 

108 

01101100 

6C 

l 

 

236 

11101100 

EC 

ý 

109 

01101101 

6D 

m 

 

237 

11101101 

ED 

Ý 

110 

01101110 

6E 

n 

 

238 

11101110 

EE 

¯ 

111 

01101111 

6F 

o 

 

239 

11101111 

EF 

´ 

112 

01110000 

70 

p 

 

240 

11110000 

F0 

 

113 

01110001 

71 

q 

 

241 

11110001 

F1 

± 

114 

01110010 

72 

r 

 

242 

11110010 

F2 

 

115 

01110011 

73 

s 

 

243 

11110011 

F3 

¾ 

116 

01110100 

74 

t 

 

244

11110100 

F4 

 

117 

01110101 

75 

u 

 

245 

11110101 

F5 

§ 

118 

01110110 

76 

v 

 

246 

11110110 

F6 

÷ 

119 

01110111 

77 

w 

 

247 

11110111 

F7 

¸ 

120 

01111000 

78 

x 

 

248 

11111000 

F8 

° 

121 

01111001 

79 

y 

 

249 

11111001 

F9 

¨ 

122 

01111010 

7A 

z 

 

250 

11111010 

FA 

· 

123 

01111011 

7B 

{ 

 

251 

11111011 

FB 

¹ 

124 

01111100 

7C 

| 

 

252 

11111100 

FC 

³ 

125 

01111101 

7D 

} 

 

253 

11111101 

FD 

² 

126 

01111110 

7E 

~ 

 

254 

11111110 

FE 

 

127 

01111111 

7F 

 Delete 

 

255 

11111111 

FF 

  

quarta-feira, 19 de novembro de 2008

Asp.Net – evitar o postback como clique na tecla “Enter” ou “Return”

Evitar que o a tecla "enter" ou "return" faça o submit do formulário.

Acontece que no preenchimento de um formulário, muitas vezes por engano (pois queremos passar apenas para o campo seguinte) clicamos em "enter" e lá vai o formulário.

A Forma de evitar isto no asp.net é muito simples.

Basta colocar a propriedade UseSubmitBehavior="False" do <asp:Button> a false.

<asp:Button
ID="BTGravar"
runat="server"
Text="Gravar"
Width="130px"


onclick="BTGravar_Click"
UseSubmitBehavior="False"
/>

Deste modo o formulário só é enviado (post) quando clicamos no botão e não quando clicamos na tecla "enter".


 

Espero que esta pequena dica possa ajudar alguém. Parece estranho mais ainda levei algum tempo até descobrir isto. Já andava a fazer código em javascript para detectar o evento associado à tecla… E afinal é tão simples.

sexta-feira, 7 de novembro de 2008

Problemas com som num portatil HP Pavilion dv5000

De um momento para o outro o meu portátil HP Pavilion dv5097ea deixou de emitir qualquer som. Com a mensagem de que não havia hardware instalado.

No gestor de dispositivos a placa de som on board da marca Conexant tinha simplesmente "desaparecido". Na altura não me tinha apercebido por não utilizar mas o modem também da marca Conexant tinha "desaparecido".

Na Bios nada encontrei relativamente à placa de som. Em desespero instalei actualizei os drivers e a bios. Isto à excepção do driver da placa de som. Não consegui instalar porque segundo o meu bichinho, não tinha qualquer placa instalada.

Imaginei que existisse algum conflito, apesar de não haver qualquer indicação nesse sentido, pois para Windows simplesmente não existia placa de som.

Havendo conflito pensei que talvez cortando completamente a energia a coisa se resolvesse.

Já em tempos tinha tido um problema semelhante com um modem num pc. Nesse caso o modem bloqueava todo o sistema nem a bios arrancava.

Isto aconteceu na primeira semana do pc.

O mais estranho na altura era que em casa o pc nem sequer arrancava. Desligava o pc da corrente, levava-o à loja e funcionava logo. Isto ainda aconteceu umas duas vezes.

Até que cheguei à conclusão que a Solução passava por cortar a corrente ao pc durante uns segundos, para que o modem libertasse o sistema.

Foi o que resolvi fazer neste caso.

Retirei a bateria e desliguei o cabo de alimentação. Carreguei no botão de power para que ele tentasse arrancar e gastasse toda a corrente eléctrica que pudesse estar acumulada.

A seguir liguei o pc e voilá… Tinha sido encontrado novo hardware.

Uma placa de som Conexant e um modem também Conexant.

terça-feira, 4 de novembro de 2008

ERRO: Conversion of a char data type to a datetime data

Este erro ocorre na conversão de datas de string para datetim, essencialmente tem a ver com as definições locais. Ocorre quando introduzimos uma data do tipo "22-03-1953".

O que acontece é que provavelmente os setings defenidos no SQL Server, as datas estão configuradas como mm-dd-yyyy. Ou seja como ele interpreta 22 como sendo o mês, está claramente "out-of-range".

"Server Error in '/SPA' Application.

The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Podemos resolver de duas formas. A primeira é converter a data no código para o formato pretendido.

A melhor solução é ir ao SQL SERVER, e alterar as propriedades do utilizador, ajustando a opção Default Language para Portugês.

No caso de a aplicação ser em ASP .NET o utilizador para o qual se deve alterar esta propriedade é o ASPNET