powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Поле ИД в таблицах 1С
8 сообщений из 8, страница 1 из 1
Поле ИД в таблицах 1С
    #35107410
GimTonik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В ДБФ таблицы поле ИД имеет значения 1 2 3 2FS....

Как бы перевести 2FS в обычное числовое?
...
Рейтинг: 0 / 0
Поле ИД в таблицах 1С
    #35107511
Сисой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кури n-ричные системы счисления.
В 1С по-моему n=32.
...
Рейтинг: 0 / 0
Поле ИД в таблицах 1С
    #35107584
погань
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СисойВ 1С по-моему n=32.
Хуже - n=36
10 цыфр + 26 английских букв
...
Рейтинг: 0 / 0
Поле ИД в таблицах 1С
    #35107657
GimTonik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин я так и подумал, но были сомнения :) а у кого нить неть готового кода?
...
Рейтинг: 0 / 0
Поле ИД в таблицах 1С
    #35107774
Reder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GimTonikблин я так и подумал, но были сомнения :) а у кого нить неть готового кода?
Есть в 1С, недокументированные ф-ии _IdToStr и _StrToId
...
Рейтинг: 0 / 0
Поле ИД в таблицах 1С
    #35107815
GimTonik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Reder GimTonikблин я так и подумал, но были сомнения :) а у кого нить неть готового кода?
Есть в 1С, недокументированные ф-ии _IdToStr и _StrToId

Неее, я беру ДБФ файл, и в дельфях с ним работаю, вот думаю как бы ИД 1С преобразовать в числовое значение
...
Рейтинг: 0 / 0
Поле ИД в таблицах 1С
    #35107860
Reder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GimTonik Reder GimTonikблин я так и подумал, но были сомнения :) а у кого нить неть готового кода?
Есть в 1С, недокументированные ф-ии _IdToStr и _StrToId

Неее, я беру ДБФ файл, и в дельфях с ним работаю, вот думаю как бы ИД 1С преобразовать в числовое значение
В таком случае 1 раз написать функцию перевода из 10-ричного формата в 36-ричный думаю нетрудно. Подсказываю формат 36-ричный потому что в английском языке 26 букв.
...
Рейтинг: 0 / 0
Поле ИД в таблицах 1С
    #35107913
GimTonik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВСЕМ спасибо нашел

function _IdToStr(i: Integer): String;
var s: String;
var ost: Integer;
var c: char;
const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
begin
if i>=2147483647 then Raise Exception.Create('Ожидается число < 2147483647');
if i<0 then Raise Exception.Create('Ожидается значение >=0');

s:='';
repeat
ost:=i mod 36;
i:=i div 36;
c:=chars[ost+1];
s:=c+s;
until i=0;
while Length(s)<6 do begin
s:=' '+s;
end;

Result:=s;
end;


///////////////////////////////////////////////////////////////////////
function _StrToId(s: String): Integer;
var
c: char;
i: Integer;
p: Integer;
const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
begin
Result:=0;
s:=trim(s);
if Length(s)>6 then Raise Exception.Create('Ожидается строка не длиннее 6 символов: '+s);
for i:=1 to Length(s) do begin
c:=s ;
p:=pos(c, chars)-1;
if p<0 then Raise Exception.Create('Ожидается символ '+chars);
Result:=Result*36;
Result:=Result+p;
end;
if Result<0 then Raise Exception.Create('На входе слишком большое значение: '+s);

end;
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Поле ИД в таблицах 1С
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]