|
v8: Проблема с кодировкой | ☑ | ||
---|---|---|---|---|
0
aptomilov
18.01.12
✎
11:13
|
Программно формирую текст HTML вставляю его как текст в письмо и отправляю средствами 1С. Результат : все читаемо кроме нескольких строк в табличной части в конце документа они выходя как кракозябры как будто кодировка не пошла
http://dl.dropbox.com/u/37772184/pril.png |
|||
1
aptomilov
18.01.12
✎
11:14
|
если взять этот же код и открыть браузером то все ОК
|
|||
2
aptomilov
18.01.12
✎
11:15
|
причем текст в колонке объект один и тот же
|
|||
3
Дядя Васька
18.01.12
✎
11:16
|
ты б хоть код выложил что ли...
|
|||
4
aptomilov
18.01.12
✎
11:20
|
а запросто на те
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=cp-1251" /> <title>Untitled Document</title> <style type="text/css"> .style5 { font-size: large; font-weight: bold; } .style6 { font-size: x-large; font-weight: bold; } .style8 { font-size: x-large; font-weight: bold; color: #FF0000; } .style10 { font-size: large; font-weight: bold; color: #0000FF; } </style> </head> <body> <table width="725" height="390" border="1"> <tr align="center"> <td width="126" height="105" valign="top"><p>№ документа:</p> <p class="style5">N 00000000144 от 16.01.2012 16:21:19</p></td> <td width="25%" height=153" valign="top"><p align="center">Контрагент:</p> <p align="center"><strong>Агрострой ЖБИ завод ЗАО</strong></p> <table width="100%" border=0" cellpadding=1" cellspacing=1" bordercolor=#FFFFFF" bgcolor=#FFFFFF"> <tr> <td width="20%" align="center">Кред.:</td> <td width="50%" "align="center"bgcolor=#00FF00><strong>Задолженность:659 161,76</strong></td> </tr> <tr> <td width="20%" align="center"><strong> ОР: </strong></td> <td bgcolor=#00FF00><align="center"><strong>Задолженность:659 161,76</strong></td> </tr> </table> <p> </p> </td> <td width="25%" height=153" valign="top"><p>Сумма: </p> <p><font size="6"color="#FF0000"> <strong>659 161,76</strong></font></p> <p><font size="3" color="#0000FF"> <strong>659 161,76</strong></font></p></td> </td> <td width="246" align="center" valign="top"><p align="center">Наименование платежа: </p> <p align="center"><strong></strong></p></td> </tr> <tr> <td height="24" colspan="4" align="left">ЦФО: <strong>Отдел материально-технического снабжения</strong></td> </tr> <tr> <td height="23" colspan="4" align="left">Ответственный: <strong>Леванов Михаил Владимирович</strong></td> </tr> <tr align="center"> <td height="38" colspan="2" bgcolor=#00FF00><strong>Директор фин. деп. и казначейства Бутов В.Д.: одобрено <strong>Подписан</strong></td> <td bgcolor=#00FF00><strong>Экономист Ивко А.С.::</strong>Подписан</strong></td> <td bgcolor=#00FF00><strong>Директор Ческидов М.А.: одобрено</strong>Подписан</strong></td> </tr> <tr align="center"> <td height="34%" colspan="2"> </td> <td > </td> <td > </td> </tr> <tr align="center" valign="top"> <td height="23" colspan="4"> <font color="#ff0000" align="center"><strong>Приоритетное</strong></td> </tr> <tr align="center" valign="top"> <td height="23" colspan="4" align="left"><strong>Примечание: </strong></td> </tr> <tr> <td height="23" colspan="4" align="center"><a href="http://vpn.interpolis74.ru/s4et/зрс00000000144.01.12г..jpg"><strong>Счет</strong></a></td> </tr> </table> <br> <b>Перечень номенклатуры</b> <table width="725" border="1"> <tr> <td width="20%">Объект</td> <td width="45%">Номенклатура</td> <td width="7%">Кол-во</td> <td width="5%">Ед.Изм.</td> <td width="10%">Цена</td> <td width="13%">Сумма</td> </tr> <tr> <td>Кулибина 3Ж АБК 3-я очередь</td> <td>Прогон ПРГ 60.2.5-4Т</td> <td>20</td> <td>шт</td> <td>11 078,58</td> <td>221 571,67</td> </tr> <tr> <td>Кулибина 3Ж АБК 3-я очередь</td> <td>Прогон ПРГ 32.1.4-4Т</td> <td>2</td> <td>шт</td> <td>2 619,99</td> <td>5 239,98</td> </tr> <tr> <td>Кулибина 3Ж АБК 3-я очередь</td> <td>Прогон ПРГ 28.1.3-4Т</td> <td>2</td> <td>шт</td> <td>2 379,63</td> <td>4 759,25</td> </tr> <tr> <td>Кулибина 3Ж АБК 3-я очередь</td> <td>Плита перекрытия ПБ 60-15-8 AтV</td> <td>36</td> <td>шт</td> <td>8 071,24</td> <td>290 564,47</td> </tr> <tr> <td>Кулибина 3Ж АБК 3-я очередь</td> <td>Плита перекрытия ПБ 60-12-8 AтV</td> <td>1</td> <td>шт</td> <td>5 848,49</td> <td>5 848,49</td> </tr> <tr> <td>Кулибина 3Ж АБК 3-я очередь</td> <td>Плита перекрытия ПБ 60-15-12,5 AтV</td> <td>5</td> <td>шт</td> <td>8 433,61</td> <td>42 168,07</td> </tr> <tr> <td>Кулибина 3Ж АБК 3-я очередь</td> <td>Плита перекрытия ПБ 30-15-8 AтV</td> <td>22</td> <td>шт</td> <td>4 045,9</td> <td>89 009,83</td> </tr> </table> </body> </html> |
|||
5
hhhh
18.01.12
✎
11:31
|
(4) это код не на языке 1с
|
|||
6
aptomilov
18.01.12
✎
11:37
|
Зато стряпал его язык 1С вот этот ) :
Функция ФормированиеТекстаПисьма() НомерДокВписьмо=Номер; ДатаДок=Дата; КомВписьмо=Строка(СоглСумма); СуммаВписьмо=Строка(СуммаДокумента); СальдоКонечноеФорматированное=""; СуммаПланОР=0; ЦветИ=""; ЦветЭ=""; ЦветД=""; ЦветКредиторки=""; ЦветПлана=""; КредиторкаВПисьмо=0; ///реальные данные Если КредиторкаВПисьмо<0 Тогда ЦветКредиторки="#FF0000"; иначе ЦветКредиторки="#00FF00"; КонецЕсли; ПланВПисьмо=0; ПланВПисьмо = ПланВПисьмо + СоглСумма; Если ПланВПисьмо<0 Тогда ЦветПлана="#FF0000"; иначе ЦветПлана="#00FF00" КонецЕсли; Если ЭконФлаг Тогда ПодписьИ="Подписан"; ЦветИ="#00FF00"; иначе ПодписьИ="Не подписан"; ЦветИ="#FF0000"; КонецЕсли; Если ГлЭконФлаг Тогда ПодписьЭ="Подписан"; ЦветЭ="#00FF00"; иначе ПодписьЭ="Не подписан"; ЦветЭ="#FF0000"; КонецЕсли; Если ДиректорФлаг Тогда ПодписьД="Подписан"; ЦветД="#00FF00"; иначе ПодписьД="Не подписан"; ЦветД="#FF0000"; КонецЕсли; Если ПриоритетнаяОтправка Тогда Приоритетность=""; иначе Приоритетность="Приоритетное"; КонецЕсли; ОтпрФайл=ПолучитьИмяФайла(); Если Найти(Строка(ОтпрФайл),"00")<>0 Тогда Иначе ОтпрФайл="http://vpn.interpolis74.ru/s4et2.html"; КонецЕсли; ОперативнаяЗадолженность=ЭлементыФормы.НадписьИтогоЗадолженностьПоКонтрагенту.Заголовок; Объекты=СокрЛП(ЦФО.Наименование); ТекстПисьма="<html> |<head> |<meta http-equiv=""Content-Type"" content=""text/html; charset=cp-1251"" /> |<title>Untitled Document</title> |<style type=""text/css""> |<!-- |.style5 { | font-size: large; | font-weight: bold; |} |.style6 { | font-size: x-large; | font-weight: bold; |} |.style8 { | font-size: x-large; | font-weight: bold; | color: #FF0000; |} |.style10 { | font-size: large; | font-weight: bold; | color: #0000FF; |} //|--> |</style> |</head> | |<body> //|<p align=""left"" class=""style6""> //|"+Город+"</p> |<table width=""725"" height=""390"" border=""1""> | <tr align=""center""> | <td width=""126"" height=""105"" valign=""top""><p>№ документа:</p> | <p class=""style5"">N "+НомерДокВписьмо+" от "+ДатаДок+"</p></td> | <td width=""25%"" height=153"" valign=""top""><p align=""center"">Контрагент:</p> | <p align=""center""><strong>"+Контрагент+"</strong></p> | <table width=""100%"" border=0"" cellpadding=1"" cellspacing=1"" bordercolor=#FFFFFF"" bgcolor=#FFFFFF""> | <tr> | <td width=""20%"" align=""center"">Кред.:</td> //| <td width=""50%"" align=""center"">План ОР:</td> | <td width=""50%"" ""align=""center""bgcolor="+ЦветКредиторки+"><strong>"+ОперативнаяЗадолженность+"</strong></td> | </tr> | <tr> | <td width=""20%"" align=""center""><strong> ОР: </strong></td> | <td bgcolor="+ЦветПлана+"><align=""center""><strong>"+Формат(ОперативнаяЗадолженность, "Ч010.0. ")+"</strong></td> | </tr> | </table> <p> </p> | </td> | <td width=""25%"" height=153"" valign=""top""><p>Сумма: </p> | <p><font size=""6""color=""#FF0000""> <strong>"+КомВПисьмо+"</strong></font></p> | <p><font size=""3"" color=""#0000FF""> <strong>"+СуммаВПисьмо+"</strong></font></p></td> | </td> | <td width=""246"" align=""center"" valign=""top""><p align=""center"">Наименование платежа: </p> | <p align=""center""><strong>"+СокрЛП(Описание)+"</strong></p></td> | </tr> | | <tr> | <td height=""24"" colspan=""4"" align=""left"">ЦФО: <strong>"+Объекты+"</strong></td> | </tr> | <tr> | <td height=""23"" colspan=""4"" align=""left"">Ответственный: <strong>"+Ответственный+"</strong></td> | </tr> | <tr align=""center""> //| <td height=""38"" colspan=""2"" bgcolor=""#00FF00""><strong>Главный экономист:<strong>" +Строка(ПодписьЭ)+"</strong></td> | <td height=""38"" colspan=""2"" bgcolor="+ЦветЭ+"><strong>" + ЭлементыФормы.ГлЭконНадпись.Заголовок +" одобрено <strong>" +Строка(ПодписьЭ)+"</strong></td> //| <td bgcolor=""#00FF00""><strong>Финансист</strong></td> | <td bgcolor="+ЦветИ+"><strong>"+ЭлементыФормы.ЭконНадпись.Заголовок+":</strong>" +Строка(ПодписьИ)+"</strong></td> //| <td bgcolor=""#FF0000""><strong>Директор</strong></td> | <td bgcolor="+ЦветД+"><strong>"+ЭлементыФормы.ДиректорНадпись.Заголовок+" одобрено</strong>" +Строка(ПодписьД)+"</strong></td> | </tr> | <tr align=""center""> |<td height=""34%"" colspan=""2""> " + СокрЛП(ГлЭконКомментарий) + "</td> |<td > " + СокрЛП(ЭконКомментарий) + "</td> |<td > " + СокрЛП(ДиректорКомментарий) + "</td> | </tr> | <tr align=""center"" valign=""top""> | <td height=""23"" colspan=""4""> <font color=""#ff0000"" align=""center""><strong>" +Приоритетность+ "</strong></td> // | <td> <h3><font color=""#ff0000""align=""center"">" +Приоритетность+ "</strong></p></td> | </tr> | <tr align=""center"" valign=""top""> | <td height=""23"" colspan=""4"" align=""left""><strong>Примечание: "+СокрЛП(Комментарий)+"</strong></td> | </tr> | <tr> // | <td height=""23"" colspan=""4"" align=""center""><strong>Счет (Ссылка)</strong></td> | <td height=""23"" colspan=""4"" align=""center""><a href="""+ ОтпрФайл+"""><strong>Счет</strong></a></td> | </tr> //| <tr> //| <td height=""111"" colspan=""4"" valign=""top"">Для механиков: <strong>"+ИмяФайла1+"</strong></td> //| </tr> |</table> |<br> |<b>Перечень номенклатуры</b> |<table width=""725"" border=""1""> |<tr> | <td width=""20%"">Объект</td> | <td width=""45%"">Номенклатура</td> | <td width=""7%"">Кол-во</td> | <td width=""5%"">Ед.Изм.</td> | <td width=""10%"">Цена</td> | <td width=""13%"">Сумма</td> |</tr>"; ТекстТабЧасти=""; Для Каждого СтрокаЗРС Из ДопРасшифровкаПлатежа Цикл ОбъектСтр = СокрЛП(СтрокаЗРС.Объект.Наименование); Если Найти(ОбъектСтр,"<>")<>0 Тогда ОбъектСтр=""; КонецЕсли; НоменклатураСтр=СокрЛП(СтрокаЗРС.Номенклатура.Наименование); КолВоСтр=Строка(СтрокаЗРС.Количество); ЕдИзмСтр=СокрЛП(СтрокаЗРС.ЕдиницаИзмерения.Наименование); ЦенаСтр=Строка(СтрокаЗРС.Цена); СуммаПлатежаСтр=Строка(СтрокаЗРС.СуммаПлатежа); ТекстТабЧасти=ТекстТабЧасти+" |<tr> | <td>"+ОбъектСтр+"</td> | <td>"+НоменклатураСтр+"</td> | <td>"+КолВоСтр+"</td> | <td>"+ЕдИзмСтр+"</td> | <td>"+ЦенаСтр+"</td> | <td>"+СуммаПлатежаСтр+"</td> |</tr>"; КонецЦикла; ТекстПисьма=ТекстПисьма+ТекстТабЧасти; КонецТекста=" |</table> |</body> |</html> "; ТекстПисьма=ТекстПисьма+КонецТекста; Возврат ТекстПисьма; КонецФункции //ФормированиеТекстаПисьма() |
|||
7
Дядя Васька
18.01.12
✎
11:38
|
(4) Проблема явно на этапе "вставляю его как текст в письмо и отправляю средствами 1С", сам html верный. Какой-то символ 1С не так вставляет, вот и перевирается.
|
|||
8
mikecool
18.01.12
✎
11:42
|
состряпал бы табдок, сохранил в хтмл, а потом бы вставил
|
|||
9
aptomilov
18.01.12
✎
12:15
|
Текст.Кодировка = "windows-1251"; вот эта строчка все решила // тут имеется ввиду текст письма
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |