Add Airtable mapping documentation
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
182
05_INTEGRACIONES/airtable-mapping.md
Normal file
182
05_INTEGRACIONES/airtable-mapping.md
Normal file
@@ -0,0 +1,182 @@
|
||||
# Mapeo HST - Airtable
|
||||
|
||||
**Estado:** Implementado
|
||||
**Última actualización:** 2026-01-04
|
||||
|
||||
---
|
||||
|
||||
## Descripción
|
||||
|
||||
Sistema de mapeo bidireccional entre los tags semánticos HST/FLG almacenados en PostgreSQL y las múltiples bases de Airtable utilizadas por el equipo.
|
||||
|
||||
---
|
||||
|
||||
## Bases Airtable
|
||||
|
||||
| Base | ID | Tablas | Columna en map |
|
||||
|------|-----|--------|----------------|
|
||||
| hst_flg | appxaEAneiaYtO8NC | hst, flg | airtable_hst_flg |
|
||||
| hst_psn | appOyP8gZfm9Bdcgm | hst | airtable_hst_psn |
|
||||
| lumalia | appZgRKY5sG6E9zJy | hst in | airtable_lumalia |
|
||||
| lum | apps8bynpQRuMPEid | hst in | airtable_lum |
|
||||
| tuzzaro | appDaK3LcfWFrlc5u | hst in | airtable_tuzzaro |
|
||||
| psn | appWIVTR5cYd3aIDJ | hst in | airtable_psn |
|
||||
| bck | apprqWlmqdj98YIUt | hst in | airtable_bck |
|
||||
| pff | appAyCPZAtkPhkOAh | hst in | airtable_pff |
|
||||
|
||||
---
|
||||
|
||||
## Tabla de Mapeo
|
||||
|
||||
**Schema:** `map`
|
||||
**Tabla:** `airtable_map`
|
||||
**Ubicación:** PostgreSQL en servidor HST (72.62.2.84)
|
||||
|
||||
### Estructura
|
||||
|
||||
```sql
|
||||
CREATE TABLE map.airtable_map (
|
||||
id SERIAL PRIMARY KEY,
|
||||
als VARCHAR(255), -- Alias del tag
|
||||
mrf_hst VARCHAR(64), -- Hash MRF en HST
|
||||
airtable_hst_flg VARCHAR(20),
|
||||
airtable_hst_psn VARCHAR(20),
|
||||
airtable_lumalia VARCHAR(20),
|
||||
airtable_lum VARCHAR(20),
|
||||
airtable_tuzzaro VARCHAR(20),
|
||||
airtable_psn VARCHAR(20),
|
||||
airtable_bck VARCHAR(20),
|
||||
airtable_pff VARCHAR(20),
|
||||
created_at TIMESTAMP DEFAULT NOW()
|
||||
);
|
||||
|
||||
CREATE INDEX idx_map_als ON map.airtable_map(als);
|
||||
CREATE INDEX idx_map_mrf ON map.airtable_map(mrf_hst);
|
||||
```
|
||||
|
||||
### Contenido
|
||||
|
||||
| Origen | Registros |
|
||||
|--------|-----------|
|
||||
| hst | 963 |
|
||||
| flg | 65 |
|
||||
| **Total** | **1028** |
|
||||
|
||||
---
|
||||
|
||||
## Lógica de Matching
|
||||
|
||||
El mapeo se realiza por **alias normalizado**:
|
||||
|
||||
1. Lowercase
|
||||
2. Eliminar espacios extra
|
||||
3. Eliminar "/" en conectores (ej: "M12 / 6p" → "M12 6p")
|
||||
4. Normalizar variantes:
|
||||
- `prototipo` se omite
|
||||
- `especificaciones` → `especificación`
|
||||
|
||||
### Formato de Alias
|
||||
|
||||
```
|
||||
{ref} {nombre}
|
||||
```
|
||||
|
||||
Ejemplos:
|
||||
- `spe m12 6p female`
|
||||
- `flg spain`
|
||||
- `hst acero inoxidable`
|
||||
- `rbc cable de cinta`
|
||||
|
||||
---
|
||||
|
||||
## Grupos HST
|
||||
|
||||
| Grupo | Descripción | Cantidad |
|
||||
|-------|-------------|----------|
|
||||
| hst | Tags principales | 717 |
|
||||
| spe | Especificaciones técnicas | 142 |
|
||||
| vsn | Visiones | 40 |
|
||||
| vue | Vistas | 21 |
|
||||
| msn | Misiones/Proyectos | (pendiente) |
|
||||
|
||||
---
|
||||
|
||||
## Conectores Añadidos
|
||||
|
||||
Conectores técnicos sincronizados con Airtable:
|
||||
|
||||
### JST
|
||||
- jst jwpf 2p/3p/4p female/male
|
||||
- jst sm 2p/3p/4p female/male
|
||||
|
||||
### Roscas M
|
||||
- M8 4p female/male
|
||||
- M12 2+2p/4p/6p/8p female/male
|
||||
- M15 3p female/male
|
||||
- M16 2p/2+4p female/male/screw
|
||||
- M20 3p/4p screw
|
||||
- M25 2+2p female/male
|
||||
- M29 4p female/male
|
||||
- mr30 female/male
|
||||
|
||||
### Otros
|
||||
- xt30 female/male
|
||||
- xt60 female/male
|
||||
- ethernet
|
||||
- utp, ftp, s/ftp, sf/utp
|
||||
- rbc (ribbon cable / cable de cinta)
|
||||
|
||||
---
|
||||
|
||||
## Convenciones de Nombres
|
||||
|
||||
| Campo | Español | Inglés |
|
||||
|-------|---------|--------|
|
||||
| nombre_es | hembra/macho | - |
|
||||
| nombre_en | - | female/male |
|
||||
| Roscas | M8, M12, M16... (mayúsculas) | M8, M12, M16... |
|
||||
| Resto | minúsculas | minúsculas |
|
||||
|
||||
---
|
||||
|
||||
## Archivos
|
||||
|
||||
| Ubicación | Archivo | Descripción |
|
||||
|-----------|---------|-------------|
|
||||
| HST Server | /hst/map/airtable_map.sql | Schema SQL |
|
||||
| R2 | documentos adjuntos/architect/airtable_map.md | Listado completo |
|
||||
| R2 | documentos adjuntos/architect/proyectos_msn.md | 108 proyectos pendientes |
|
||||
|
||||
---
|
||||
|
||||
## Pendientes
|
||||
|
||||
- [ ] Añadir 108 proyectos al grupo `msn`
|
||||
- [ ] Sincronización automática bidireccional
|
||||
- [ ] Webhook para cambios en Airtable
|
||||
|
||||
---
|
||||
|
||||
## Uso
|
||||
|
||||
### Consultar mapeo
|
||||
|
||||
```sql
|
||||
SELECT * FROM map.airtable_map WHERE als LIKE '%spain%';
|
||||
```
|
||||
|
||||
### Obtener ID de Airtable para un tag HST
|
||||
|
||||
```sql
|
||||
SELECT als, airtable_hst_flg, airtable_lumalia
|
||||
FROM map.airtable_map
|
||||
WHERE mrf_hst = 'abc123...';
|
||||
```
|
||||
|
||||
### Buscar por ID de Airtable
|
||||
|
||||
```sql
|
||||
SELECT als, mrf_hst
|
||||
FROM map.airtable_map
|
||||
WHERE airtable_hst_flg = 'recXXXXXXXX';
|
||||
```
|
||||
Reference in New Issue
Block a user