пятница, 25 декабря 2015 г.

Перекодировка текста в/из UTF-8 штатными средствами 1С 7.7

Надо: Сохранить из 1С 7.7 файл в формате UTF-8

Решение больше частью отсюда.
Альтернативные варианты: использование библиотеки от romix или использовать adodb stream.

UPD 16.08.17 По умершей ссылке было что-то вроде этого:

Функция ПреобразоватьСтрокуВУТФ8(Стр)
    Длина=СтрДлина(Стр);
    Итог="";
    Для Н=1 По Длина Цикл
        Знак=Сред(Стр,Н,1);
        Код=КодСимв(Знак);
        Если Код<128 Тогда
            Итог=Итог+Знак;
        Иначе
            Если (Код>=КодСимв("А"))И(Код<=КодСимв("п")) Тогда
                Итог=Итог+Симв(208)+Симв(144+Код-КодСимв("А"));
            ИначеЕсли (Код>=КодСимв("р"))И(Код<=КодСимв("я")) Тогда
                Итог=Итог+Симв(209)+Симв(128+Код-КодСимв("р"));
            ИначеЕсли (Знак="ё") Тогда
                Итог=Итог+Симв(209)+Симв(145);
            ИначеЕсли (Знак="Ё") Тогда
                Итог=Итог+Симв(208)+Симв(129);
            ИначеЕсли (Знак="і") Тогда
                Итог=Итог+Симв(209)+Симв(150);
            ИначеЕсли (Знак="ї") Тогда
                Итог=Итог+Симв(208)+Симв(151);
            ИначеЕсли (Знак="є") Тогда
                Итог=Итог+Симв(209)+Симв(148);
            ИначеЕсли (Знак="Є") Тогда
                Итог=Итог+Симв(208)+Симв(132);
            КонецЕсли;
        КонецЕсли;
    КонецЦикла;
    Возврат Итог;
КонецФункции

четверг, 19 ноября 2015 г.

Грамотное добавление сетевого диска через групповые политики

Два простых  решения:
  1. Создать ярлык на раб. стол (к примеру) на этот ресурс и юзать себе на здоровье.
  2. Подключить сетевой диск.
Рассмотрим второй вариант. Для подключения сетевого диска всем пользователям домена используется простой cmd-файл:

start /wait /min net use o: /delete /yes
start /wait /min net use o: \\Server\Share
$ /persistent:no  /yes



/persistent:no  - параметр, при котором диск не будет постоянно восстанавливаться при входе в систему (т.е. создается только на данный "сеанс"). Строка net use o: /delete перед строкой добавления диска исключит возможную ошибку, если диск w уже существует.

Открываем оснастку Active Directory Users and Computers. Кликаем правой кнопкой по нашему домену, выбираем св-ва, вкладка групповые политики (групповые политики домена, а не контроллера домена!), выбираем вашу политику, кликаем Edit. В открывшемся Group Policy Object Editor`е -> User Configuration -> Windows Setting -> Scripts -> Logon. Добавляем наш скрипт и все.
Почему именно в User Configuration, а не в Computer Configuration? Возможно, на сетевой папке будет открыт доступ только для определенных групп/пользователей. Скрипт из Computer Configuration выполнится раньше входа в систему пользователя, при этом возникнет ошибка доступа к ресурсу из-за отсутствия соответствующих прав. Именно в этих целях скрипт прописан в User Configuration, т.е. он выполняется при непосредственном входе пользователя в домен.

среда, 18 ноября 2015 г.

GPS+AGPS (обновление альманаха через инженерное меню)

Отсюда: http://4pda.ru/2014/09/25/177874/#comment1887672

1) Включить в настройках Android, в разделе “Мое месторасположение” AGPS, затем открыв верхнюю “шторку” в телефоне активировать GPS.
2) Затем в звонилке, необходимо набрать *#*#3646633#*#* - вход в инженерное меню.
Может быть, на вашем телефоне заработает другой номер для входа в инженерное меню Android:
*#*#4636#*#*
*#*#8255#*#*, *#*#4636#*#* — для Samsung
*#*#3424#*#*, *#*#4636#*#*, *#*#8255#*#* — для HTC
*#*#7378423#*#* — для Sony
*#*#3646633#*#* — для Philips, Fly, Alcatel
*#*#2846579#*#* — для Huawei
Если не получается, поищите информацию о том, как войти в инженерное меню в вашем Android телефоне. Если у вас телефон на базе процессоров MTK (MT6577, MT6589 …), вы можете воспользоваться программой “MobileuncleTools” (необходим ROOT), ее можно скачать из GooglePlay. В ней присутствует раздел EngineerMode. Он нам и нужен.
3) Когда вы попали (любым способом) в инженерное меню телефона, нужно перейти на вкладку YGPS – и посмотреть на закладке “Satellites” – появляются ли шкалы сигнала. Если да, значит спутники телефон пытается искать , но не находит из-за неправильно записанного Альманаха. И это не удивительно, ведь аппарат приехал с другого “конца света” .
4) Следующим шагом будет переход на вкладку “Information”, а затем нажатие по очереди кнопок “full”, “warm”, ”hot”, “cold” (для полного сброса старого Альманаха).
5) После этого, на вкладке NMEA Log, необходимо нажать кнопку start. (начнется запись нового Альманаха)
6) Теперь для правильной работы GPS, необходимо перейти на задку “Satellites” и ожидать в течении 5-15 минут пока будет найдено максимальное кол-во шкал спутников (обычно от 10 до 13 штук) и их шкалы позеленеют .
7) Когда все спутники будут найдены – перейдите снова на закладку Nmea Log и нажмите кнопку “stop”. Поздравляю, новый альманах для вашей местности записан.
Делал эту процедуру на многих китайфонах - в результате процедуры, телефон должен начать быстрее находить спутники.
Напомню, что все вышеописанные действия для улучшения качества GPS, необходимо проводить сугубо на открытой местности, подальше от зданий. И последний совет – рекомендую выставить точно системное время и дату в телефоне.

пятница, 13 ноября 2015 г.

Простые числа

primesieve.org - primesieve is a free software program and C/C++ library that generates primes using a highly optimized sieve of Eratosthenes implementation. It counts the primes below 10^10 in just 0.45 seconds on an Intel Core i7-6700 CPU (4 x 3.4GHz). primesieve can generate primes and prime k-tuplets up to 2^64.

Wheel_factorization

Решето Сундарама

Решето Эратосфена

Решето Аткина

четверг, 5 ноября 2015 г.

Жёсткий диск работает в неправильном режиме: UltraDMA-2/PIO вместо UltraDMA-5

Проблема: Постоянные жалобы пользователя на медленную работу компьютера. Компьютер старый, P-IV-2800/512/80 IDE под Windows XP, однако, рядом стоят еще 2 абсолютно таких же, и работают без проблем.

В диспетчере устройств  - режим работы жесткого диска UltraDMA-2, хотя недавно 100% был UltraDMA-5.

Поиск выдал несколько вариантов:

Програмка Hard Drive Inspector 2.80 пишет, что Ваш диск работает в Ultra DMA mode 2 (33 MB/s), хотя его оптимальный режим передачи данных Ultra DMA mode 5 (100 MB/s). Это может привести к снижению производительности дисковых операций.

HDD Работает в режиме PIO за место Ultra DMA-5 

Как включить режим Ultra DMA, выключить PIO. Hardware Interrupts грузит систему
Причина:
После определенного количества ошибок чтения Windows переводит контроллер на более медленный режим.

Решение:
1. Узнать, в каком режиме винт.
Заходим в диспетчер устройств — IDE/ATAPI контроллеры — первичный(вторичный)  канал и в дополнительных параметрах смотрим режим передачи — если PIO/UltraDMA-2, это он. Пробуем поставить режим «DMA если доступно» (причем это проделать во  всех первичных и вторичных каналах) и перезагрузить систему. Если опять стоит режим PIO, то проверить шлейф винчестера и питание. Если не помогло, то решение — поменять винчестер или вариант 2:

2. Отключить контроль ошибок.
В разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdfs создайте ключ ErrorControl и установите его значение в 0. Если ключ уже существует, просто измените его значение. Перезагрузитесь. Удалите и заново установите IDE-контpоллеp из "Диспетчера устройств".  

3. Выставить вручную режим UDMA для контроллеров
Заходим в реестр(меню Пуск-выполнить-regedit), далее в раздел
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}.
Где:
0000 – сам контролёр.
0001 – Secondary IDE Chanell.
0002 – Primary IDE Chanell
 В подразделах 0001 и 0002 делаем так:
1. В меню правка Создать, параметр DWORD.
2. Введите строку ResetErrorCountersOnSuccess и нажмите клавишу ВВОД.
3. 2 раза щелкнуть по созданому параметру и ввести значение 1. Нажать Ок.
В этих же разделах проверить
«MasterIdDataCheckSum»=dword:0
«SlaveIdDataCheckSum»=dword:0
Далее, проверьте, чтобы в этих же разделах параметры MasterDeviceTimingModeAllowed и SlaveDeviceTimingModeAllowed у вас имели значеие ffffffff (в шестнадцатиричной системе). И соответствующему параметру MasterDeviceTimingMode или SlaveDeviceTimingMode присвойте требуемое значение:
0×10010 — соответствует режиму UDMA Mode 5 (ATA100).
0×8010 — UDMA Mode 4 (ATA66).
0×2010 — UDMA Mode 2 (ATA33).
0×0410 — Multi-Word DMA Mode 2
Перезагрузиться.

Мне же, увы, помогла только замена шлейфа на новый  и красивый 80-пиновый. :)

понедельник, 26 октября 2015 г.

Firefox: код ошибки: ssl_error_weak_server_ephemeral_dh_key

Проблема: При попытке зайти на сервере DELL Power EDGE в консоль OpenManage Server Administrator (https://*:1311) получаем в Firefox:
"Ошибка при установлении защищенного соединения. При соединении с *** произошла ошибка. SSL получило слабый эфемерный ключ Диффи-Хеллмана в сообщении рукопожатия «Обмен ключами сервера». (Код ошибки: ssl_error_weak_server_ephemeral_dh_key)"


Решение:
Здесь "Код ошибки: ssl_error_weak_server_ephemeral_dh_key"
и здесь: https://support.mozilla.org/ru/questions/1075891


Копия под катом.

среда, 21 октября 2015 г.

Установка 1С:Предприятие 7.7 на Microsoft SQL Server 2008 R2

Источник: http://tavalik.ru/ustanovka-1spredpriyatie-7-7-na-microsoft-sql-server-2008-r2/

Официально, платформа 1С:Предприятие 7.7 работает только с MS SQL Server 2000. Но с помощью небольших манипуляций можно организовать стабильную работу и с последней, на момент написания статьи, версий Microsoft SQL Server 2008 R2. Ниже представлена пошаговая настройка связки 1С:Предприятие 7.7 + MS SQL Server 2008 R2 + Microsoft Windows Server 2008 R2 (Справедливо и для других операционных систем семейства Windows). Итак:

0. Оглавление

  1. Установка Windows Server 2008 R2
  2. Установка SQL Server 2008 R2 
  3. Создание новой базы данных в SQL Server 2008 R2
  4. Настройка Windows Server 2008 R2
  5. Установка 1С:Предприятие 7.7
  6. Патч и замена файла BkEnd.dll
  7. Создание представления sksprocesses в MS SQL Server
  8. Добавление информационной базы в 1С:Предприятие 7.7
  9. Настройка безопасности для всех пользователей

понедельник, 17 августа 2015 г.

1C 8.x: Недокументированное использование стандартных обработок из меню "Все функции".


В платформе 1С предприятие есть очень удобные стандартные функции:

1. Активные пользователи;
2. Журнал регистрации;
3. Поиск ссылок на объект;
4. Проведение документов;
5. Удаление помеченных объектов;
6. Управление внешними источниками данных;
7. Управление итогами;
8. Управление полнотекстовым поиском;
9. Управление расширениями конфигурации;

Однако нигде не описаны варианты их использования кроме вызова из пункта "Все функции" главного меню. Поэтому иногда встречается мнение, что эти функции являются чем-то специфичным и сложным, что они вообще написаны не на 1С, а на С++ как и сама платформа.
На самом деле технически эти функции являются самыми обычными 1С обработками, включенными в состав платформы, и ими можно пользоваться полностью аналогично любым другим привычным обработкам.
Рассмотрим несколько способов их использования на примере стандартной обработки "Поиск ссылок на объекты".

Установка прав входа в систему при помощи служебной программы Ntrights.exe

В настоящей статье описывается процедура установки прав входа в систему при помощи служебной программы NTRights (Ntrights.exe). 

Ntrights.exe представляет собой служебную программу из комплекта ресурсов Resource Kit, которая может использоваться для установки прав пользователя из командной строки. Ntrights.exe может использоваться для управления правами как на локальном, так и на удаленном компьютере. В файле справки к Ntrights.exe перечислены не все права входа в систему, которые могут быть изменены.

В следующем списке перечислены права входа в систему, которые могут быть изменены при помощи служебной программы NTRights:

Право пользователяПонятное имя
SeNetworkLogonRightДоступ к компьютеру из сети
SeInteractiveLogonRightЛокальный вход в систему
SeBatchLogonRightВход в качестве пакетного задания
SeServiceLogonRightВход в качестве службы
SeDenyNetworkLogonRightОтказ в доступе к компьютеру из сети
SeDenyInteractiveLogonRightОтказ в локальном входе в систему
SeDenyBatchLogonRightОтказ во входе в качестве пакетного задания
SeDenyServiceLogonRightОтказ во входе в качестве службы


Примечание. При использовании служебной программы NTRights имейте в виду, что право пользователя указывается с учетом регистра.

Следующий текст взят из файла справки Ntrights.exe.

10 критически важных event ID для мониторинга

Копия статьи: http://habrahabr.ru/company/netwrix/blog/148501/

Рэнди Франклин Смит (CISA, SSCP, Security MVP) имеет в своем арсенале очень полезный документ, рассказывающий о том, какие события (event IDs) обязательно должны отслеживаться в рамках обеспечения информационной безопасности Windows. В этом документе изложена крайне полезная информация, которая позволит Вам “выжать” максимум из штатной системы аудита. Мы подготовили перевод этого материала. Заинтересованных приглашаем под кат.

О том, как настроить аудит, мы уже обстоятельно писали в одном из наших постов. Но из всех event id, которые встречаются в журналах событий, необходимо остановить свое внимание на нескольких критических важных. На каких именно – решать каждому. Однако Рэнди Франклин Смит предлагает сосредоточить внимание на 10 важных событиях безопасности в Windows.

пятница, 14 августа 2015 г.

VDI Fails

VDI Fail 1. Никто не понимает как лицензируется Microsoft.
Поговорите с 10 людьми в Microsoft как лицензировать VDI - получите 11 разных ответов.
VDI Fail 2. Не тот продукт по неправильной причине.
На основе чего вы выбираете платформу VDI? Только лишь потому что кто-то дал вам бесплатных лицензий или потому что гипервизор от того же вендора?
VDI Fail 3. Недостаточно экспертизы, чтобы проект взлетел.
Хватит ли у вас экспертизы по всем подсистемам, задействованным в проекте, или он завалится как колосс на глиняных ногах?
VDI Fail 4. VDI как решение проблемы планшетов.
Если планшеты только как почти бесплатная опция вдобавок, то почему бы и нет? Но приложения для мыши и клавиатуры могут очень плохо работать на тач-интерфейсе.
VDI Fail 5. Покупка на будущее.
Будете ли вы покупать мини-вэн на большую семью, если вам 20 лет? К моменту, когда он реально понадобится, может пройти 5, 10 лет. А он может и не понадобиться вовсе.
VDI Fail 6. Плохие привычки из прошлого.
Прошлые привычки в новом окружении способны похоронить весь проект.
VDI Fail 7. Плохое исследование текущей ситуации.
Нет ничего хуже, чем в разгар миграции обнаружить, что половина пользователей не может использовать критически важные приложения, о которых вы были даже не в курсе.
VDI Fail 8. Не знать когда остановиться.
Не всем нужны VDI машины. Они нужны почти любой компании с числом пользователей более 50, но какой доле этих пользователей они нужны, 5%? 10%?

Brian Madden. The VDI Delusion.

Нашел здесь.

среда, 29 июля 2015 г.

Остановка зависшего сервиса в Windows

Чтобы остановить сервис, зависший в состоянии starting или stopping (в этом случае команды net start/stop не работают), делаем следующее:

1. Открываем командную строку:
Пуск -> Выполнить -> вводим cmd.exe и нажимаем Ввод.

2. Узнаем PID (Process ID) сервиса:
В cmd.exe выполняем следующий код:
sc queryex SERVICENAME
где SERVICENAME - имя зависшего процесса, можно посмотреть в списке сервисов. Например для сервиса очереди печати (Print spooler) имя процесса - spooler.

3. Убиваем процесс:
Выполняем в cmd.exe следующий код:
taskkill /PID PROCESS_PID_NNN /F
где PROCESS_PID_NNN - номер процесса для остановки.

upd. Для windows 2003 server встретилась ситуация, когда при установке обновлений индикатор прогресса останавливается насовсем, при этом в процессах присутствует WmiPrvSE.exe (кушает от 25 и выше % процессорного времени).  В этом случае убивать сервис автоматического обновления не надо.
Необходимо удалить процесс WmiPrvSE.exe, и установка обновлений продолжится дальше. 

четверг, 9 июля 2015 г.

1С и 1С++: пометка на удаление документов определенного вида до определенной даты

Необходимо: Пометить 200 тыс. документов вида "кпкЗадание" на удаление. Документ не принадлежит ни к одной из компонент.

Решение:
Все документы 1С хранятся в таблице _1SJourn. Для пометки документа на удаление необходимо модифицировать следующие поля (очистить признак проведения и установить флаг пометки на удаление):

F=CLOSED                |Flag document is clo    |Y   |0     |0
F=ISMARK                |Doc is Marked for De    |L   |0     |0
  
CLOSED - Флаг проведения документа. Для каждого набора компонент свое значение (аналогично полю APPCODE). Значение последнего бита отвечает за флаг проведения документа. Тип - Число(1). 
ISMARK - Флаг пометки на удаление. 0 - не помечен, 1 - помечен. Тип - Число(1,0) (бинарное значение).
 
Источники:
http://www.skalnyy.com/1c-sql-bystroe-udalenie-dokumentov/ 
http://www.script-coding.com/Direct_queries.html#3.
http://www.script-coding.com/v77tables.html#1.2.4.

Текст модуля:

выбДата = Формат(ДобавитьМесяц(РабочаяДата(), -6), "ДГГГГММДД");
ТекстЗапроса = "
    |UPDATE
    |    _1sjourn
    |SET
    |    ismark = 1, closed = 0
    |WHERE
    |    (Date_Time_IDDOC<'"+выбДата+"')

    |AND
    |    IDDocDef=$ВидДокумента.кпкЗадание
    |";
Query = СоздатьОбъект("ODBCRecordSet");  
Возвр = Query.Выполнить(ТекстЗапроса);
Если Возвр = 0 Тогда
    глКомментарий(Query.GetLastError(),0,,"!");
КонецЕсли;
Query.Закрыть();

понедельник, 6 июля 2015 г.

1С++ и 1С 7.7: выборка документов за определенный период

В примере - выборка документов вида "Маршрут доставки" до определенной даты (6 мес.):


выбДата = Формат(ДобавитьМесяц(РабочаяДата(), -6), "ДГГГГММДД");

//
ТекстЗапроса = "
|SELECT
|    Док.IDDOC AS [МаршрутДоставки $Документ.МаршрутДоставки]
|FROM
|    $Документ.МаршрутДоставки AS Док (NOLOCK)
|INNER JOIN
|    _1SJourn AS Журнал ON (Док.IDDOC = Журнал.IDDOC)
|WHERE
|    Журнал.DATE_TIME_IDDOC < '" + выбДата + "'
|";
   
рс = СоздатьОбъект("ODBCRecordset");
тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
   
Сообщить(тз.КоличествоСтрок());


P.S. Для таких простых прямых запросов выигрыша в скорости по сравнению со стандартными методами 1С практически нет.

* Полная документация по прямым запросам здесь: http://www.script-coding.com/Direct_queries.html

пятница, 3 июля 2015 г.

Заполнение шаблонов Excel из 1С

Требуется: Заполнить готовую книгу Excel с кучей формул и форматированием из 1С.

Решение: Просматриваем из 1С все листы, и в ячейки с примечаниями (комментариями)  записываем результат формулы, указанные в этих же ячейках.

Т.е. нашли ячейку с примечанием - прочитали в ней выражение, вычислили с помощью 1С, и записали обратно в ячейку.


Перебор ячеек с примечаниями - только чтобы ускорить просмотр книги, не перебирать все ячейки в ней.

Идея: http://infostart.ru/public/16466/

Текст примера под катом, функция ЗначениеПоказателя() и переменная ФайлШаблона - в фрагменте не описаны.

четверг, 18 июня 2015 г.

Firefox: проблемы с видео (проблема с flash)

Проблема: Mozilla FireFox 38, при проигрывании видео с YouTube черный экран, звук есть

Решение:
Рекомендации отсюда и отсюда результата не принесли.
(проверка на вирусы, новый профиль, удаление плагинов, сброс браузера, переустановка adobe flash player)

Помогла установка дополнения HTML5 PlayerYouTube™ - появился переключатель

P.S. Судя по количеству плагинов со словами "Youtube" и "HTML5" - проблема  встречается у многих.

Коротко о плагине:

среда, 17 июня 2015 г.

1Cv7.7: получение строки соединения с SQL-сервером из файла .dba

Дано: База 1С 7.7 крутится на SQL, необходимо из самой 1С получить имя сервера, чтобы не спрашивать пользователя/заподить константы и т.п.

Решение: дешифровать файл .DBA, в нём хранится как имя сервера и рабочей базы, так и логин-пароль пользователя, под которым подключается 1С.

Под катом 3 ссылки, все утащено на память из указанных источников. В работе используется первый, как самый компактный, хотя и требующий 1С++

FAQ по администрированию 1С и MS SQL Server





Постоянно теряется, поэтому утаскиваю на память. Пригодится.
(http://myscrapbook.narod.ru/sb/Archive/data/20090515074631/index.html если и отсюда уйдет - искать по названию статьи)
 
2. Что такое QA?
3. Что такое BOL?
4. Какие особенности 1С при доступе к MS SQL Server 2000?
5. Как установить или конвертировать конфигурацию с dbf версии в SQL версию базы данных?
6. Как изменить тип авторизации доступа к SQL Server?
7. Как создать базу для 1С на SQL Server?
8. Как поменять владельца базы SQL?
9. Как переиндексировать базу на MS SQL Server?
10. Как проверить (восстановить) базу на MS SQL Server средствами сервера
11. Как упаковать (зашринковать) базу на MS SQL Server?
12. Как упаковать (дефрагментировать) индексы базы на MS SQL Server?
13. Как уменьшить рост журнала транзакций базы на MS SQL Server?
14. Как скопировать базу 1С, работающую с базой БД в формате MS SQL Server?
15. Как изменить место размещения файлов базы tempdb MS SQL Server?
16. Как узнать логин и пароль подключения 1С к MS SQL Server?
17. Как узнать размер таблиц в базе данных MS SQL Server
18. При старте 1С, или при попытке открытия конфигурации выдается сообщение "SQL State: 24000 Native: 0 Message: [Microsoft] [ODBC SQL Server Driver] Invalid cursor state"
19. При попытке монопольно войти в 1С или при записи конфигурации выдается сообщние "База данных не может быть открыта в однопользовательском режиме"
20. Как узнать какой сервис-пак установлен на SQL Server 2000 или SQL Server 2005
21. Как решить проблемы с памьятью. 1 - Windows Server не видит больше 4 GB ОЗУ, 2 SQL Server не может использовать больше 2 GB.
22. Медленно работает 1С по сети с базой на SQL Server
23. После установки на SQL Server 2000 Service Pack 4 SQL стал медленне работать и меньше загружать память
24. После установки на SQL Server 2000 проведение документов замедлилось
25. Не могу подключиться к SQL серверу
26. По каким то причина SQL Server очень медленно работает
27. При попытке подключения к SQL2005 выдается сообщение "Требуется ms sql server версии 6.5 + service pack 5a или более старшая версия"
28. Как подключиться к SQL2005 по IP адресу а не по имени сервера
29. Как получить имя пользователя, который занимает много процессорного времени SQL-Server
30. Как сделать чтобы 1С подключался к SQL не под одним логином (SQL аутентификация), а под логинами Windows (Windows аутотентификация)
31. Работа 1С v77 под Vista и MS SQL 2005
32. При подключении 1С возникате ошибка "SQL State 42000. Native 7202. ... SQL Server Could not find serve 'ServerName' ..."
33. Как создать дополнительные индексы для таблиц
34. Резервная копия базы SQL и MD-файла
35. Как разрешить в SQL Server 2005 использование xp_cmdshell
36. Если вы не нашли желаемого ответа

понедельник, 15 июня 2015 г.

Узнать размеры таблиц 1С в базе MS SQL

Дано: База 1С SQL, надо разобраться, отчего она растет, как на дрожжах.
Поскольку это 1С - имеются сотни таблиц, перебирать которые вручную никакого желания нет.
 
Решение 1.
http://blog.imageofyou.ru/2011/11/09/all-tables-size/ 
Понадобилось мне тут давеча оценить размер таблиц в базе данных одного из наших клиентов. Еще со времен SQL Server 2000 я знаю про процедуру sp_spaceused, но она хороша только для случая, когда нужен размер лишь одного объекта – конкретной таблицы или же всей БД целиком. А для того, чтобы посмотреть размер каждого объекта (например, для того, чтобы найти аномально большие таблицы) приходилось извращаться с курсором и сохранением результата выполнения процедуры во временной таблице. Не самый изящный способ.
С появлением в SQL Server 2005 data management views эту задачу стало возможно решить с помощью всего одного запроса (без курсоров, временных таблиц и прочей “экзотики”).

 
select  t.name as TableName, Min(t.create_date) as CreateDate, ds.name as FileGroupName, SUM(u.total_pages) * 8 / 1024 as SizeMB 
from sys.tables as t
inner join sys.partitions as p on t.object_id = p.object_id
inner join sys.allocation_units as u on p.partition_id = u.container_id
inner join sys.data_spaces as ds on u.data_space_id = ds.data_space_id
group by t.name, ds.name
order by SizeMB desc
 

Решение 2
http://mainview.ru/raznoe/sql-mysql/kak-najti-samye-bolshie-tablicy-v-baze-dannyx-ms-sql 

USE [DatabaseName]
GO
CREATE TABLE #temp (
table_name sysname ,
row_count INT,
reserved_size VARCHAR(50),
data_size VARCHAR(50),
index_size VARCHAR(50),
unused_size VARCHAR(50))
SET NOCOUNT ON
INSERT #temp
EXEC sp_msforeachtable 'sp_spaceused ''?'''
SELECT a.table_name,
a.row_count,
COUNT(*) AS col_count,
a.data_size
FROM #temp a
INNER JOIN information_schema.columns b
ON a.table_name collate database_default
= b.table_name collate database_default
GROUP BY a.table_name, a.row_count, a.data_size
ORDER BY CAST(REPLACE(a.data_size, ' KB', '') AS integer) DESC
DROP TABLE #temp
 
Альтернативные варианты: искать обработки с инфостарта, писать самому, получить демонстрационный доступ на сервисе gilev.ru

понедельник, 8 июня 2015 г.

Решение проблемы с громкостью на Android для Skype и Viber

Проблема: На китайском устройстве Magic W800, в Viber и Skype очень тихий звук как в микрофоне, так и в динамиках - на максимальной громкости абонента еле-еле слышно, а меня не слышно вообще.  В обычном приложении телефона и всех мультимедиа-программах никаких проблем со звуком нет.

Причина: Необходимо настроить уровни чувствительности микрофона через инженерное меню.


Решение:
Здесь Настройка громкости с помощью инженерного меню на Android
и здесь Увеличение громкости аппарата выше максимальных порогов.

Вызов инженерноего меню:
смарты на базе проц. МТК     *#*#54298#*#* или *#*#3646633#*#*
Samsung     *#*#197328640#*#* или *#*#4636#*#* или *#*#8255#*#*
HTC     *#*#3424#*#* или *#*#4636#*#* или *#*#8255#*#*
Huawei     *#*#2846579#*#* или *#*#14789632#*#*
Sony     *#*#7378423#*#* или *#*#3646633#*#* или *#*#3649547#*#*
Fly, Alcatel, Philips     *#*#3646633#*#*
Prestigio     *#*#3646633#*#*
ZTE     *#*#4636#*#*
Philips     *#*#3338613#*#* или *#*#13411#*#*
TEXET     *#*#3646633#*#*
Acer     *#*#2237332846633#*#*


Альтернатива: утилита Mobile Uncle Tools из маркета

Разделы в меню Audio:
— Normal Mode (раздел настроек в нормальном или обычном режиме) – такой режим активный, когда к смартфону ничего не подключено;
— Headset Mode (режим гарнитуры) – такой режим активируется после подключения наушников или внешних колонок;
— LoudSpeaker Mode (режим громкоговорителя) – он активируется, когда к смарту ничего не подключено, и Вы включаете громкую связь во время разговора по телефону;
— Headset_LoudSpeaker Mode (режим громкоговорителя при подключенной гарнитуре) – такой режим активируется, когда к смарту подключить наушники или внешние колонки, и Вы включаете громкую связь во время разговора по телефону;
— Speech Enhancement (режим разговоров по телефону) – такой режим активируется в обычном режиме разговоров по телефону, причем к нему ни чего не подключено (гарнитура, внешние колонки) и не включена громкая связь.


Под катом копия статьи:

среда, 3 июня 2015 г.

MD Office: Как перенести базу на другой ПК / Как сохранить базу при переустановке Windows

Вариант 1.

Вручную создать копию БД можно следующим способом:
  1. Открыть программу для создания резервных копий BackUpDeclaration, которая находится в папке ...\MasterD\MD-Declaration\BackUpDeclaration.exe. 
  2. Открыть вкладку "Создание архива".
  3. Указать папку, в которую будет произведено резервное копирование.
  4. Указать, что создается "резервная копию базы данных", и нажать кнопку "Поместить в архив" .
  5. Дождаться окончания процесса создания резервной копии базы деклараций. 

Восстанавливаем этой же программой, перед восстановлением обязательно отключаем службы FireBird.

У меня вариант 1 не сработал! Долго шли сообщения от FireBird о выполнении сохранения, однако файл в результируещей папке не создавался (права пользователя были проверены-перепроверены несколько раз).

Вариант 2.
Работает метод отсюда: http://www.mdoffice.com.ua/ruser/help/md03_001.htm

Сохраняем файлы данных
Перед копированием - отключаем службы FireBird !!!

1. База ГТД и документов (эл.копии которых "привязывались" в 44 графу ГТД) - файлы Declaration.gdb и DECLDOCUMENT.GDB, которые по умолчанию находятся в папке C:\ProgramFiles\MasterD\MD-Declaration\Base
Для корректного запуска программы после переноса её на другой ПК необходимо сохранить всю папку MD-Declaration.
2. База писем до 100 евро, международным экспресс отправлениям и данные по ведению складов СВХ (ТЛС) - файл MDExplorer.fdb, по умолчанию находится в папке C:\Program Files\MasterD\local\db
3. База программы MD Form - файл MDPRINT.GDB, по умолчанию находится в папке C:\Program Files\MasterD\MDForm\DB
4. Базу данных программы Info (нормативные документы) ( C:\Program Files\MasterD\MDInfo\DB\Masterd.gdb ) сохранять не обязательно, она практически не содержит пользовательских данных, только список избранных документов и пользовательские подборки.

После установки программы на новый ПК
До регистрации программы копируем "старые" базы (MDExplorer.fdb, Declaration.gdb и DECLDOCUMENT.GDB) в соответствующие папки на новом ПК.
Обязательно отключаем службы FireBird перед заменой файлов.

После замены файлов, запускаем сервер FireBird, выполняем регистрацию и работаем.

четверг, 7 мая 2015 г.

DCPromo. Что внутри?

Копия статьи отсюда: https://fromreallife.wordpress.com/2012/04/30/dcpromo/

Чтобы добавить дополнительный контроллер домена для существующего домена, нужно использовать мастер DCPromo, о котором так небрежно говорят администраторы и о тайном знании всех параметров которого мечтают все специалисты техподдержки. Что же происходит во время этого процесса? В интернете конечно, имеется огромное количество статей-комиксов с картинками, «как поднять DC с нуля», поэтому мы сосредоточимся на самом главном — деталях установки. Итак, начнем.

Понижение роли контроллера домена под управлением Windows Server 2003

Для понижения роли контроллера домена, достаточно превратить контроллер домена в рядовой сервер. Это делается утилитой dcpromo.exe, при запуске которой запускается мастер установки Active Directory. Процесс понижения роли имеет свои особенности, связанные с количеством контроллеров в домена в лесе и  их функциональностью. Если контроллер домена, является сервером глобального каталога, то будет выдано предупреждение! Его можно проигнорировать в двух случаях: если контроллер домена — единственный и уничтожается вся доменная структура; если в лесе имеются другие контроллеры, выполняющие эту функцию.
Пуск — Выполнить - dcpromo.exe, при запуске которой запускается мастер установки Active Directory

Далее процесс в картинках: :)

Включение или отключение глобального каталога Active Directory

Отсюда: https://msdn.microsoft.com/ru-ru/library/cc758330%28v=ws.10%29.aspx
  1. Откройте компонент "Active Directory сайты и службы".
  2. В дереве консоли щелкните контроллер домена, в котором необходимо включить или отключить глобальный каталог.
    • Active Directory — сайты и службы/Сайты/сайт, содержащий контроллер домена, который необходимо отключить или включить/Серверы/контроллер домена
  3. На области сведений щелкните правой кнопкой мыши элемент Параметры NTDS и выберите команду Свойства.
  4. Установите флажок Глобальный каталог, чтобы включить глобальный каталог или снимите флажок, чтобы его отключить.
Примечание

пятница, 24 апреля 2015 г.

Сброс пароля Windows

Необычный способ сбросить пароль: использование подмены файла, отвечающего за переключение режима залипания клавиш (пять раз нажать клавишу shift, выскакивает окошко "залипание клавиш"), на обычный CMD.EXE

Для операции подойдет любой загрузочный диск, из под которого есть доступ к файлам ПК, но в   этой статье операции показаны на примере загрузочного диска.

1. Загружаемся с загрузочного диска и выбираем "Восстановление системы".
2. Вызываем командную строку.

3. Меняем exe-файл sethc.exe, отвечающий за залипания клавиш, на cmd.exe.
 (Перед операцией скопируем sethc.exe куда-либо, чтоб его потом можно было обратно вернуть)

copy c:\windows\system32\sethc.exe c:\temp\
copy c:\windows\system32\cmd.exe c:\windows\system32\sethc.exe

4. Загружаемся в Windows и жмем пять раз shift, появится окно с консолью, запущенной из-под system, в ней меняем пароль:

net user ВашПользователь ВашНовыйПароль

5. Возвращаем sethc.exe обратно.

!!! После этих действий можно потерять доступ к зашифрованным данным и ключам. но для домашних пользователей это вряд ли актуально.

пятница, 17 апреля 2015 г.

Сетевые утилиты

NetSetMan - бесплатная и удобная для повседневного использования программа, которая позволяет легко создавать профили (всего 6 профилей) используемых сетевых подключений и быстро переключаться между ними. В каждом профиле можно задавать IP-адрес, маску подсети, DNS и WINS сервер, имя компьютера и рабочей группы, а также указывать используемые сетевые диски, принтеры и др. Доступен экспорт и импорт профилей и настроек.

Виртуализация: бесплатные решения

VMware vSphere Hypervisor — бесплатный аппаратный гипервизор, который используется для виртуализации серверов и консолидации приложений на меньшем объеме оборудования.

Xen Server - кроссплатформенный гипервизор, разработанный в компьютерной лаборатории Кембриджского университета и распространяемый на условиях лицензии GPL. Основные особенности: поддержка режима паравиртуализации помимо аппаратной виртуализации, минимальность кода самого гипервизора за счёт выноса максимального количества компонентов за пределы гипервизора. (описание отсюда)

Proxmox Virtual Environment (Proxmox VE) — система виртуализации с открытым исходным кодом, основанная на Debian GNU/Linux. Разрабатывается австрийской фирмой Proxmox Server Solutions GmbH, спонсируемой Internet Foundation Austria.
В качестве гипервизоров использует KVM и OpenVZ. Соответственно, способна выполнять любые поддерживаемые KVM ОС (Linux, *BSD, Windows и другие) с минимальными потерями производительности и Linux без потерь. (описание отсюда)

VirtualBox (Oracle VM VirtualBox) — программный продукт виртуализации для операционных систем Microsoft Windows, Linux, FreeBSD, Mac OS X, Solaris/OpenSolaris, ReactOS, DOS и других.
Программа была создана компанией Innotek с использованием исходного кода Qemu. Первая публично доступная версия VirtualBox появилась 15 января 2007 года. В феврале 2008 года Innotek был приобретён компанией Sun Microsystems, модель распространения VirtualBox при этом не изменилась. В январе 2010 года Sun Microsystems была поглощена корпорацией Oracle, модель распространения осталась прежней. (описание отсюда)

RUFUS - Create bootable USB drives the easy way


Создание загрузочных дисков

RUFUS - Create bootable USB drives the easy way

http://rufus.akeo.ie/

Rufus is a utility that helps format and create bootable USB flash drives, such as USB keys/pendrives, memory sticks, etc.
It can be especially useful for cases where:
  • you need to create USB installation media from bootable ISOs (Windows, Linux, UEFI, etc.)
  • you need to work on a system that doesn't have an OS installed
  • you need to flash a BIOS or other firmware from DOS
  • you want to run a low-level utility
Despite its small size, Rufus provides everything you need!
Oh, and Rufus is fast. For instance it's about twice as fast as UNetbootin, Universal USB Installer or Windows 7 USB download tool, on the creation of a Windows 7 USB installation drive from an ISO. It is also marginally faster on the creation of Linux bootable USB from ISOs. (1)
A non exhaustive list of Rufus supported ISOs is also provided at the bottom of this page. (2)

пятница, 3 апреля 2015 г.

Проверка, проброшен ли COM-порт в терминальной сессии

Требуется при подключении кассового аппарата.
В свойствах соединения обязательно ставим перенаправление портов.

Чтобы узнать, выполнился ли проброс портов, выполняем команду:
change port /query 
должно  вернуть что-то вроде:
AUX = \DosDevices\COM1
COM1 = \Device\RdpDrPort\;COM1:38\tsclient\COM1

UPD Статья по теме: Проброс COM порта через RDP на WinSer 2008R2

Изменение номера COM-портов / Отображение скрытых устройств

Краткий пересказ статьи: Изменение номера COM-портов / Отображение скрытых устройств

Проблема: Пропадают номера COM-портов (интерйфес RS-232). Например, был COM16, переключил разъёмчик USB – порт вдруг стал уже COM22.

Решение: Как удалить записи об отключённых и ненужных устройствах и сменить номер COM-порта в Windows XP - под катом.

пятница, 27 марта 2015 г.

Пропадает доступ к папкам (принтерам) Windows 7 из Windows XP (2003)

Проблема: После очередного автоматического обновления Windows перестал печатать принтер пользователя из терминального сеанса. Локально печатает, а из терминала - нет.

Кроме этого, нельзя зайти по сети на свою-же машину из терминального сеанса - "Нет доступа к xxx. Возможно у вас нет прав на использование этого сетевого ресурса. Обратитесь к администратору этого сервера для получение соответствующих прав доступа. Указанный сервер не может выполнить требуемую операцию."

Машина пользователя - Windows 7, сервер терминалов - Windows 2003 Server.
Компьютеры в домене, все права выставлены, как положено, время синхронизировано с сервером.
Все работало несколько лет подряд, и "внезапно" в обед перестало.

В журнале событий при каждой попытке фиксируется следующее:

"Ошибка srv. event id 2017. Сервер не смог выделить память из невыгружаемого пула памяти, так как достигнут указанный в конфигурации верхний предел.

The server was unable to allocate from the system nonpaged pool because the server reached the configured limit for nonpaged pool allocations.
"


Решение: Найдено тут и тут.
Мы должны указать нашей системе на Windows 7 что мы хотим  использовать ее в качестве файл-сервера, чтобы она выделила под это ресурсы.
  Изменяем 1 параметр:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache
и меняем значение на “1

Изменяем 2 параметр:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\size
и меняем значение на "2" или “3“.

Для справки:

вторник, 24 марта 2015 г.

Фильтр в запросе по списку документов (прямые запросы)

спДок = СоздатьОбъект("СписокЗначений");
тз.Выгрузить(спДок,,,"Док");
спДок.ДобавитьЗначение(РН);

//
ТекстЗапроса = "
    |SELECT
    |    Рег.IDDoc as [Док $Документ],
    |    Рег.IDDocDef as Док_вид,
    |    $Рег.СуммаСНДС as [СуммаСНДС]
    |FROM
    |    $Регистр.ОборотыТМЦ as Рег
    |WHERE
    |    Рег.IDDoc IN (SELECT Val FROM #спДок)
";

рс.УложитьСписокОбъектов(спДок, "#спДок");
тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
тз.ВыбратьСтроку();


* имя таблицы должно начинаться с символа «#». подробное описание в синтакс-помощнике и в примерах на скрипт-кодинге.
 

Запрос по документу c помощью 1С++ (прямой запрос)

рс = СоздатьОбъект("ODBCRecordset");
ТекстЗапроса = "
    |SELECT
    |    Рег.IDDoc as [Док $Документ],
    |    Рег.IDDocDef as Док_вид,
    |    $Рег.СуммаСНДС as [СуммаСНДС]
    |FROM
    |    $Регистр.ОборотыТМЦ as Рег
    |WHERE
    |    Рег.IDDoc = :ВыбДок
";

рс.УстановитьТекстовыйПараметр("ВыбДок", РН);   
тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
Возврат тз.итог("СуммаСНДС");

Получить таблицу значений с подчиненными документами определенного вида


рс = СоздатьОбъект("ODBCRecordset");
ТекстЗапроса = "
    |SELECT
    |    Жур.IDDoc as [Док $Документ],
    |    Жур.IDDocDef as Док_вид
    |FROM
    |    _1SJourn as Жур
    |INNER JOIN
    |    _1SCRDOC as Отбор ON Отбор.ChildID=Жур.IDDoc AND Отбор.MDID=0 AND Отбор.ParentVal=:ВыбДок*
    |WHERE
    |    Жур.IDDocDef=$ВидДокумента.РасходнаяНакладнаяКор
 

    |    AND Жур.Closed & 1 = 1";
рс.УстановитьТекстовыйПараметр("ВыбДок", РН);   
тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);



где РН - переменная с типом значения "Документ.РасходнаяНакладная",
а подчиненные документы требуются только с видом "РасходнаяНакладнаяКор"
и Жур.Closed & 1 = 1 - указание отбирать только проведенные документы (в таблице _1SJourn есть поле Closed, первый бит которого отвечает за проведенность документа)

пятница, 20 марта 2015 г.

Запуск программы с правами администратора пользователем не из группы администраторов


Требуется: На рабочей станции пользователь без привилегий должен запускать программу, которая работает только с правами администратора.
 
Стандартное решение: Воспользоваться штатной программой run as, в самом простом виде имеющей синтаксис следующего вида RUNAS  /user:\ program (for example cmd). Пароль можно передать с помощью конвейера echo |, или с помощью ключа /savecred.  Но у этого решения есть существенный недостаток, пароль передается в открытом виде, что недопустимо. Конечно, можно написать скрипт с помощью VBS и зашифровать его. Но мы не будем заниматься этим, а воспользуемся сторонними решениями, так называемыми 3-rd party программами.

Сторонние решенияCPAU (http://www.joeware.net/freetools/tools/cpau/) и RunasSpc (http://www.robotronic.de/runasspcEn.html).
Эти программы позволяют шифровать строку запуска, и затем уже запускать зашифрованный файл.

Примеры:

вторник, 17 марта 2015 г.

Проблема с переключением языка при входе в систему / изменение языка по-умолчанию.

Проблема: Раскладка при входе - аглицкая, а пароль - на русском. Или наоборот.
Индикатор RU / EN не отображается, раскладка стандартными комбинациями не переключается.

Решения: 
1. Если логин пользователя на русском:
A=ALT+0192
д=ALT+0228
м=ALT+0236
и=ALT+0232
н=ALT+0237
и=ALT+0232
с=ALT+0241
т=ALT+0242
р=ALT+0240
а=ALT+0224
т=ALT+0242
о=ALT+0238
р=ALT+0240

Остальные коды ASCII тут

2. Установка по-умолчанию и настройка внешнего вида экрана приветствия.

1. Параметры реестра, отвечающие за раскладку клавиатуры при входе в систему находятся в разделе
HKU\.DEFAULT\Keyboard Layout\Preload 
Там надо на первую позицию поместить желаемую раскладку - 00000409 (английская раскладка) или 00000419 (русская).

2. Можно внести в реестр необходимые параметры:
а) выполнив следующие команды:
reg add "HKU\.DEFAULT\Keyboard Layout\Preload" /v 1 /t REG_SZ /d 00000409 /f
reg add "HKU\.DEFAULT\Keyboard Layout\Preload" /v 2 /t REG_SZ /d 00000419 /f

б) импортировав в реестр
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Keyboard Layout\Preload] 
;Английская раскладка
 "1"="00000409" 
;Русская раскладка
"2"="00000419" 
;Раскладка с номером 1 будет предлагаться по умолчанию

3. Чтобы сменить сочетание клавиш, переключающих раскладку, выполните команду 
reg add "HKU\.DEFAULT\Keyboard Layout\Toggle" /v Hotkey /t REG_SZ /d 1 /f 
выделенный красным параметр можно менять (1 - ALT+SHIFT, 2 - CTRL+SHIFT). Чтобы переключение работало, необходимо наличие как минимум двух раскладок. См. пункт 2.

P.S. Windows 7/8 - параметры по-умолчанию можно установить через панель управления.

пятница, 6 марта 2015 г.

Драйвер для АТС Panasonic KX-TDA (Windows 8 x32)

UPD. Мне нужен был драйвер для Windows 8 x32, подошел старый драйвер для Висты, так что это резервный вариант

http://www.k-max.name/ats/drajver-x64-dlya-ats-panasonic-kx-tda/

и еще много ссылок:
http://www.proftelecom.by/manual_panasonic_kx_TDA_100.htm
http://www.telemonter.narod.ru/prog/index.html
http://forum.ru-board.com/topic.cgi?forum=8&topic=3739&start=940
http://wiki.dieg.info/mini_ats_panasonic_kx-tda100

Ошибка "IP-адрес, указанный для этого сетевого адаптера, уже назначен другому адаптеру"

Проблема: При установке IP-адреса появляется ошибка «IP-адрес, указанный для этого сетевого адаптера, уже назначен другому адаптеру имя адаптера. Имя адаптера скрыто от папки «Сетевые подключения», поскольку он либо физически отсутствует в компьютере. Если обоим устройствам назначен один и тот же адрес, только одно из них сможет его использовать. Это может привести к неполадкам в работе системы. Ввести другой IP-адрес для этого адаптера в список IP-адресов в окне дополнительных параметров?».

Решение: Нужно удалить отключенный и не видимый в диспетчере устройств сетевой адаптер.
1. «Пуск» -> «Выполнить» -> cmd
2. Включаем отображение скрытых устройств: set devmgr_show_nonpresent_devices=1
3. Запускаем «Диспетчер устройств: Start DEVMGMT.MSC
4. Открываем «Вид» -> «Показать скрытые устройства»
5. В разделе «Сетевые адаптеры» находим отключенный и удаляем.

четверг, 5 марта 2015 г.

Проблема "Вход в систему выполнен с временным профилем"

Проблема: У одного сотрудника при входе ошибка «Вход в систему выполнен с временным профилем». Со всеми вытекающими - всё создаваемое в процессе работы на рабочем столе, в «Моих документах» и т.д. при выходе удаляется. Удаление существующего профиля ни к чему не приводило.

Решение: довольно простое: лезем в реестр, открываем HKEY_LOCAL_MACHINE/\SOFTWARE/\Microsoft/\Windows NT/\CurrentVersion/\ProfileList и среди папок профилей, начинающихся на «S-1-5», ищем нужный. При открытии раздела смотрим на параметр ProfileImagePath, в нем будет указан путь к профилю, например, C:/\Users/\User. Нашли ветку? Удаляем вместе со всем содержимым.

Теперь можно входить под этим пользователем — система создаст новый нормальный профиль.

вторник, 3 марта 2015 г.

База данных диспетчера учетных записей на сервере не содержит записи для регистрации компьютера через доверительные отношения с этой рабочей станцией

Проблема:
Приехал ноут из ЦО, из старого домена не выводили.
При попытке авторизации в домене, появляется сообщение - "База данных диспетчера учетных записей на сервере не содержит записи для регистрации компьютера через доверительные отношения с этой рабочей станцией"

Причина:
В моем случае причина была банальна - отключена учетная запись компьютера на контролере домена, на котором и была попытка авторизации.

Решение:
Включить учетную запись компьютера в ActiveDirectory.

Альтернативные решения:

среда, 18 февраля 2015 г.

Получение и использование нумерованных маркеров на он-лайн картах.

Дано:  Есть старые скрипты (например, Yandex API 1.1) для рисования он-лайн карт напрямую из 1С 7.7 (выполняют отображение торговых точек и маршрутов агентов на карте, скрипты шли в поставке демонстрационной конфигурации 1С 7.7 к ПО "АгентПлюс" примерно в 2012 году)

Требуется: Получить возможность нумерации серий объектов на карте, причем в разных цветах.
Сами скрипты менять не желательно (во всяком случае, на текущий момент). Иначе можно было бы воспользоваться рекомендациями Яндекс и Google, и генерировать параметры маркеров "на лету".
Текущая версия скриптов умеет только загружать в карту произвольные имеющиеся локальные иконки, так что задача намного упрощается - необходимо много-много готовых иконок, чтобы иметь возможность из загрузить в карту :)


Решение 1: Использовать имеющиеся наборы меток:
1. kml4earth - набор иконок для Google
2. https://sites.google.com/site/gmapsdevelopment/ - еще 1 набор стандартных иконок
3. https://code.google.com/p/google-maps-icons - старый проект, но наборы иконок доступны, в том числе и цифровые от 1 до 100, но не для всех цветов
4. http://mapicons.nicolasmollet.com - набор современных иконок, ссылки на другие ресурсы
5. Google map markers | CTAPbIu_MABP's BLOG - полезный блог, в том числе ссылки на большое количество маркеров, иконок и других элементов управления


Решение 2: Использовать генерацию изображений на метках:
Решение найдено здесь. Автор решения Thydzik (по ссылке - есть исходный код на PHP).
Вот что сообщает автор:
Theses markers are totally dynamic and you can create whatever balloon icon you want but you need to host some files on your server to make it work. Just change the URL like: thydzik.com/thydzikGoogleMap/markerlink.php?text=12&color=5680FC where 12 is the text and 5680fc is the hexadecimal color code. Please note that you can't hotlink from your personal "My Maps" (maps.google.com). It can be done in 2 ways : 
    1. Use Google Maps API so that dynamic icon generation can work 
    2. Save static icons, and host them your server

Т.е., посылаем на сервер подготовленную строку, обратно получаем PNG-файл с нужным текстом, сохраняем его и используем где угодно

Пример: Вернуть маркер с текстом 1 голубого цвета:

Результат: 
 


Стандартные цвета: красный: FC6355, : 55D7D7, желтый: FCF356, фиолетовый: 7D54FC, розовый: E14E9D, оранжевый: EF9D3F, черный: 000000, коричневый: 9E7151 
Подбирать цвета можно здесь: http://www.color-hex.com/

Еще примеры результатов: 






Чтобы закачать сразу большой диапазон иконок с нумерацией - используем DownloadMaster
1. Выполняем команду "Закачка - Добавить группу закачек"
2. Указываем модифицированный адрес:
где:
   ХХХХХХ - код выбранного цвета
   $ - подстановочный символ, указывающий, в какое место адреса надо вставить изменяющееся значение счётчика.
3. Указываем диапазон изменения счетчика, например, от 1 до 100
4. Стартует загрузки и получаем 100 файлов иконок с номерами.
5. По желанию, выполняем групповое переименование загруженных маркеров с помощью бесплатного FastStone Photo Resizer.