PostgreeSQL: нечеткое сравнение в триггере

Ну собственно синтаксис такой-же как и в запросах: оператор LIKE. Соответственно триггер с не чётким сравнением может выглядеть например так:

CREATE OR REPLACE FUNCTION public.on_insert_ls()
 RETURNS trigger
 LANGUAGE plpgsql
AS $function$BEGIN
 NEW.id=nextval('ls_id_seq'::regclass);
  if new.ls like '22%' then 
	new.is_epd=true;
   else new.is_epd=false;
  end if;
 RETURN NEW;
END;$function$

1С: Поиск элемента справочника с одинаковыми кодами.

1С позволяет создавать элементы справочника (да и документа) с одинаковыми кодами (номерами), в этом случае поиск элемента по типичному:

 справочники.ГруппыПользователей.НайтиПоКоду("123");

Становится невозможным. Есть несколько вариантов решения данной проблемы:

1) Можно поискать по заведомо уникальному реквизиту (если есть):

 справочники.ГруппыПользователей.НайтиПоРеквизиту("Артикул","123");

2) Можно поискать по уникальному идентификатору (если известен):

доко.ТекущийЭтап=Справочники.itilprofЭтапыМаршрутов.ПолучитьСсылку(Новый УникальныйИдентификатор("149e1ab6-325f-11ec-9560-005056be733d"));

3) Можно поискать по сочетанию факторов, которые сделают элемент уникальным (в данном случае по владельцу):

ТекДок.ТекущийЭтап			= справочники.itilprofЭтапыМаршрутов.НайтиПоКоду("Регистрация",,,Справочники.itilprofМаршруты.НайтиПоНаименованию("Инцидент"));

Замена PHP Curl на Wget

Так получилось, что иногда пишу парсеры сайтов на PHP. Использую обычный PHP Curl, густо обмазанный различными вспомогательными классами. Всё было хорошо, но однажды один из скриптов перестал работать. Стал разбираться почему — PHP стал падать с ошибкой сегментирования (segmentation fault) при вызове:

$res=curl_exec($ch);        

Стал разбираться. Выяснил что перестаёт падать после комментирования строчки:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

Явно что-то не так с шифрованием. Вспомнил даже, что нечто подобное уже было. Проверил — точно сайт стал шифроваться по протоколу ГОСТ:

И собственно в тот раз проблема решилась а в этот раз таки уже нет. Когда попробовал добавить ключ с указанием версии шифрования, скрипт стал бесконечно висеть.

curl_setopt ($ch, CURLOPT_SSLVERSION , CURL_SSLVERSION_TLSv1_3);

И из консоли в том числе:

curl --insecure  --tlsv1.3  'https://кацукацук/'

Ну ладно. Пойдем другим путём. Проверив как открывается этот-же сайт при помощи wget, и убедившись, что с ним всё хорошо, понял что при помощи его работа в принципе будет даже проще. Всё свелось к комбинации сточек вида (конкретно тут для примера без обработки ошибок):

function reqwest($url,$param){
        $res=wget --save-cookies cookies.txt --keep-session-cookies --load-cookies cookies.txt '$url' -O tmp.html --post-data '$param' --header 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8';        
        $html= file_get_contents("tmp.html");
return $html
}

Чтиво за последнее время

  1. Серия «Я зомби» 1-2, Сказ Алексей. Сюжет: герой после прихода Системы оказывается зомби. Причем в «жиизни» он был лидером клана игроков. Ну и понеслось.. По сути бред. С трудом дочитал полкниги. Оценка 2/5
  2. Манящий свет далеких звезд 1-2. Корнеев Юрий. Очередной попаданец в мины EVO. Читабельно. Оценка 3/5
  3. Проект «Аве Мария». Уир Энди. Чес слово, жемчужина случайно обнаруженная, с год уже ничего более захватывающего не читал. Сюжет: герой приходит в себя на борту корабля летящего к Тау Кита. Постепенно восстанавливает память и вспоминает что его задача — спасти человечество, а его миссия — билет в один конец. А тут еще встреча с инопланетянином. Оценка 5/5
  4. Новая жизнь 1-2. Бобров Всеволод. Мир EVO (одна из вариаций). Но написано слабенько. Не зашло. Оценка 3/5
  5. Двойная жизнь антигероя. Kimiko. Строго 18+. Обычный неудачник в жизни, герой в компьютерной игре с «погружением». В целом интересно. Оценка 3/5

И снова ГИС ЖКХ.

После победы с формированием XML, осталось только обернуть всё в SOAP запрос. Самым простым в моём случае оказалось воспользоваться классом nusoap, Всё свелось примерно к такому коду:

$client = new nusoap_client('http://127.0.0.1:8080/ext-bus-debtreq-service/services/DebtRequestsAsync', false); // Сервер
$client->soap_defencoding = 'UTF-8'; // Кодировка запроса
$client->decode_utf8 = false; // Кодировка ответа


$soapaction = 'urn:exportDebtSubrequests';
$request_xml = file_get_contents("out.xml");
$result = $client->send($request_xml, $soapaction); 

Ткнулся сначала разбираться со штатным SoapClient, но там как оказалось, необходимо переписать весь код заново, для формирования XML. Да и мудрёно слишком.

1 5 6 7 8 9 310